100个人围成圈, 从第一个人开始从1开始报数,逢14的倍数的, 将当前人踢出游戏,最后问最后一个被踢出去的是刚开始100人的第几个人?

Posted 励志拿高薪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了100个人围成圈, 从第一个人开始从1开始报数,逢14的倍数的, 将当前人踢出游戏,最后问最后一个被踢出去的是刚开始100人的第几个人?相关的知识,希望对你有一定的参考价值。

public class TuoZhan01 {
    public static void main(String[] args) {
        //准备集合,将100个人放到集合中
        List<Integer> list = new ArrayList<>();
        for (int i = 1; i <= 100; i++) {
            list.add(i);
        }
        //定义变量描述报数
        int number = 0;
        //定义变量描述被删的索引
        int index = -1;
        //不断地报数,即死循环
        while (list.size() != 1) {
            number++;
            index++;
            //如果当前的索引值超出最大值,则需要重写开始
            if (index == list.size()) {
                index = 0;
            }
            //判断number是否是14的倍数,如果是则删除索引对应的人
            if (number % 14 == 0) {
                list.remove(index);
                index--;
            }
        }
        System.out.println(list);
    }
}

以上是关于100个人围成圈, 从第一个人开始从1开始报数,逢14的倍数的, 将当前人踢出游戏,最后问最后一个被踢出去的是刚开始100人的第几个人?的主要内容,如果未能解决你的问题,请参考以下文章

JAVA围圈报数 问题

C语言 有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的人是原来的第几号?

4.c语言编有n个人围成一圈,顺序排号。从第一个人开始报数(从1到m报数),凡报到m的人退出(m>n)(

有n个人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位

java例题_37 有 n 个人围成一圈,顺序排号。从第一个人开始报数(从 1 到 3 报数),凡报到 3 的人退出圈子, 3 问最后留下的是原来第几号的那位。

C语言 n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,计算最后留下的是最初第几号人