zoukankan      html  css  js  c++  java
  • 牛客(46)孩子们的游戏(圆圈中最后剩下的数)

    //    题目描述
    //    每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。
    //    其中,有个游戏是这样的:
    //        首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。
    //        每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,
    //        从他的下一个小朋友开始,继续0...m-1报数....这样下去....直到剩下最后一个小朋友,可以不用表演,
    //        并且拿到牛客名贵的“名侦探柯南”典藏版(名额有限哦!!^_^)。
    //        请你试着想下,哪个小朋友会得到这份礼品呢?(注:小朋友的编号是从0到n-1)
    
    
        public int LastRemaining_Solution(int n, int m) {
            if (n<=0||m<=0){
                return -1;
            }
    
            ArrayList<Integer> arrayList = new ArrayList<Integer>();
            for (int i=0;i<n;i++){
                arrayList.add(i);
            }
            int index=-1;
            while (arrayList.size()>1){
                index = (index + m)%arrayList.size();
                arrayList.remove(index);
    
                index--;
            }
            return arrayList.get(0);
        }
  • 相关阅读:
    将Temporary文件夹里的Logo文件转移到Logo文件夹
    VS2013密匙
    Android SDK Tools 更新
    安装 phoneGap
    动态创建的DOM元素进行事件绑定
    不用安装Oracle_Client就能使用PLSQL_Developer
    POI 导出Excel
    mysql 通过IP连接
    微信 xml 转 Map
    uploadify springMVC
  • 原文地址:https://www.cnblogs.com/kaibing/p/9070530.html
Copyright © 2011-2022 走看看