用数组猴子选大王问题,有10个猴子围成一圈,按顺序排号,从第一只猴子开始报数(从1到3报数),凡报到3的猴子退出圈外,以此规则进行,最后剩下的猴子即为大王,。要求用java玩成
时间: 2024-05-25 09:18:17 浏览: 28
public class MonkeyKing {
public static void main(String[] args) {
int n = 10; // 猴子的数量
int[] monkeys = new int[n]; // 用数组表示猴子,初始值为1表示还在圈内
int count = 0; // 报数计数器
int index = 0; // 当前猴子的下标
while (true) {
if (monkeys[index] == 1) { // 如果当前猴子还在圈内
count++; // 报数
if (count == 3) { // 报到3的猴子退出圈外
monkeys[index] = 0; // 猴子离开圈外
count = 0; // 计数器清零
}
}
if (monkeys[n - 1] == 0) { // 如果只剩下一只猴子,结束循环
break;
}
index++; // 下一个猴子
if (index == n) { // 如果已经到了最后一只猴子,从第一只猴子开始
index = 0;
}
}
for (int i = 0; i < n; i++) {
if (monkeys[i] == 1) { // 找到最后剩下的猴子
System.out.println("大王是第" + (i + 1) + "只猴子");
}
}
}
}
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)