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人的第几个人?的主要内容,如果未能解决你的问题,请参考以下文章