美文网首页
2017蓝桥杯javaC组模拟题5

2017蓝桥杯javaC组模拟题5

作者: LinkedIn | 来源:发表于2017-03-19 21:07 被阅读0次

标题:报数游戏

有 n (1<n<10000)个小朋友站成一个圆圈。
选定一个小朋友为1号,从他(她)开始顺时针编号:1,2,3,4,...

游戏开始! 从1号小朋友起,顺时针报数,从1报起。
即:1号小朋友报1,2号小朋友报2,3号小朋友报3, ....

游戏规定,报到数字 m(1<m<100) 的小朋友立即退出报数圈。
在他(她)的顺时针方向的下一个小朋友(如果有的话)开始重新从1报数...
游戏这样一直进行下去,直到圈中只剩下一个小朋友。

求最后剩下的小朋友的编号。

输入:两个整数,n 和 m, 用空格分开。含义如上。

输出:一个整数,表示最后剩下的小朋友的编号。

比如:
输入:
15 3
程序应该输出:
5

再比如:
输入:
7 4
程序应该输出:
2

资源约定:
峰值内存消耗(含虚拟机) < 256M
CPU消耗 < 1000ms

数学解法

static int k=1;
    public static void main(String[] args) {
        

    }
    @SuppressWarnings("unused")
    private static void M1() {
        Scanner input = new Scanner(System.in);
        int int1 = input.nextInt();
        int int2 = input.nextInt();
        int s=0;
        for(int i=2;i<=int1;i++)  
        {  
         s=(s+int2)%i;  
        }  
        System.out.println(s+1);
        input.close();
    }

链表解法

    private Integer yueSeFu(int num1, int num2) {
        LinkedList<Integer> list = new LinkedList<Integer>();
        // 初始化数据队列
        for (int i = 1; i <= num1; i++) {
            list.add(i);
        }
        int book = 1;
        while (list.size() > 1) {
            ListIterator<Integer> it1 = list.listIterator();
            while (it1.hasNext()) {
                it1.next();
                if (book == num2) {
                    it1.remove();
                    book = 1;
                } else {
                    book++;
                }
            }
        }
        return list.get(0);
    }

相关文章

  • 2017蓝桥杯javaC组模拟题5

    标题:报数游戏 有 n (1

  • 2017蓝桥杯javaC组模拟题3

    题目:猜算式 你一定还记得小学学习过的乘法计算过程,比如: 273x 15 1365273 4095 请你观察...

  • 2017蓝桥杯javaC组模拟题4

    标题:数字段计数 在一个给定的字符串中,既包含数字也包含字母。我们不关心具体的数字、字母都是什么。我们只是想知道,...

  • 2017蓝桥杯javaC组模拟题1

    1题: 请统计出下面的数据块中有多少个1? 10111000100110010111110111000101100...

  • 2017蓝桥杯javaC组模拟题2

    标题:奇怪的捐赠 麻烦的是,他有个很奇怪的要求: 100万元必须被正好分成若干份(不能剩余)。每份必须是7的若干次...

  • 2017蓝桥杯javaC组模拟题7

    题目:滑动解锁 滑动解锁是智能手机一项常用的功能。你需要在3x3的点阵上,从任意一个点开始,反复移动到一个尚未经过...

  • 2017蓝桥杯javaC组模拟题6

    标题:加密解密 1.首先按行填入密钥串,重复的字母忽略之。2.紧接其后,按字母序按行填入不在密钥串中的字母。3.由...

  • 双通道方波频率检测与倍频输出

    准备蓝桥杯嵌入式中,昨天与今天我写了写蓝桥杯第六届模拟题双通道方波频率检测与倍频输出(密码是5p0v),这道题目难...

  • 蓝桥杯真题题解收藏

    收藏一些在网上发现的,觉得写的不错的蓝桥杯真题题解内容,给学生练习备战蓝桥杯时所用。2020蓝桥杯省赛第二场C组_...

  • 记录蓝桥杯学习之路20171201

    这段时间莫名奇妙觉得自己特别颓废,决定开始要学习了,距离2018年5月末蓝桥杯决赛还有6个多月吧 目标c++A组国...

网友评论

      本文标题:2017蓝桥杯javaC组模拟题5

      本文链接:https://www.haomeiwen.com/subject/vsyvnttx.html