public class Count3Quit2 { public static void main(String[] args) {
int kids = 500;
int quiteNum = 3; boolean[] quiteFlag = new boolean[kids];
for (int i = 0; i < quiteFlag.length; i++) {
quiteFlag[i] = false;
} int pos = -1;
for (int i = 0; i < 500; i++) {
for (int j = 0; j < quiteNum; j++) {
while (true) {
pos++;
if (pos >= kids) {
pos = 0;
}
if (!quiteFlag[pos]) {
break;
} }
}
quiteFlag[pos] = true;
System.out.printf("第%d次第%d个小孩退出\n", i + 1, pos + 1);
}
}
}
这是我写的一个程序,直接用一个标志数组和循环来实现的,没搞你那么多类和方法。
int kids = 500;
int quiteNum = 3; boolean[] quiteFlag = new boolean[kids];
for (int i = 0; i < quiteFlag.length; i++) {
quiteFlag[i] = false;
} int pos = -1;
for (int i = 0; i < 500; i++) {
for (int j = 0; j < quiteNum; j++) {
while (true) {
pos++;
if (pos >= kids) {
pos = 0;
}
if (!quiteFlag[pos]) {
break;
} }
}
quiteFlag[pos] = true;
System.out.printf("第%d次第%d个小孩退出\n", i + 1, pos + 1);
}
}
}
这是我写的一个程序,直接用一个标志数组和循环来实现的,没搞你那么多类和方法。
解决方案 »
- 滚动条怎么变色了?
- 求一个小编程题答案,今天面试遇到的!在线等~~~~
- 还是有关空字符的问题,谢谢
- 简单说明J2EE中以下服务内容,JTS,JMS,JNDI,JMX,JCA ?急急急哦
- 关于排序帖子的疑问
- 这种函数声明是什么意思:void test(String s, Object... args) {}
- 调用同一个包下的几个自定义类为何无法编译?
- 菜鸟我用j2sdk1.4.1 和 JCreator 不知如何查阅java的库,听说在sun网站上有,不知有没有离线版?
- 为什么JB中的输入不接受回车,而控制台输入又接受?
- 又是一个继承问题
- RandomAccessFile的readUTF()方法的问题
- 请问如何实现两个run方法(不好意思,暂时没分了。)
public class Count3Quit2 { public static void main(String[] args) {
int kids = 500;
int quiteNum = 3; boolean[] quiteFlag = new boolean[kids];
for (int i = 0; i < quiteFlag.length; i++) {
quiteFlag[i] = false;
} int pos = -1;
for (int i = 0; i < kids; i++) {
for (int j = 0; j < quiteNum; j++) {
while (true) {
pos++;
if (pos >= kids) {
pos = 0;
}
if (!quiteFlag[pos]) {
break;
} }
}
quiteFlag[pos] = true;
System.out.printf("第%d次第%d个小孩退出\n", i + 1, pos + 1);
}
}
}for循环中写了一个500的常量,实际应该用kids。
int n = 500, m = 3;
int index = 0;
for (int i = 2; i <= n; i++) {
index = (index + m) % i;
}
System.out.println(index + 1);
}约瑟夫问题