import java.util.Scanner;
public class Java_201712_2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int k = scanner.nextInt();
boolean[] arrays = new boolean[n];// 是否已经淘汰
int left = n;// 剩余人数
int count = 0;// 计数
int index = 0;// 当前人位置
while (left > 1) {
if (!arrays[index]) {
count++;
if (count % 10 == k || count % k == 0) {
arrays[index] = true;
left--;
}
}
index++;
if (index == n)
index = 0;
}
scanner.close();
for (int i = 0; i < n; i++)
if (!arrays[i])
System.out.println(i + 1);
}
}
CCF 201712-2 游戏 Java
最新推荐文章于 2022-05-25 19:36:05 发布
本文介绍了一个使用Java实现的淘汰赛算法,通过循环和条件判断,从n个参赛者中根据特定规则找出最后的胜者。算法使用了boolean数组来标记已淘汰的参赛者,并通过计数和位置索引进行迭代,直到只剩下最后一个参赛者。
533

被折叠的 条评论
为什么被折叠?



