在网上看到一个这个的题,就随便写了一个.
如果大家有什么更的的算法.希望能给出代码交流下.
public class TestArrayGame {
public static final int MAX_LENGTH = 500;
public static void main(String []args) {
int []person = new int[MAX_LENGTH];
for(int i=0 ; i<person.length ; i++) {
person[i] = i+1;
}
int i = 0;
int time = 0;
int inNum = person.length;
while(inNum != 1) {
if(person[i%MAX_LENGTH] != 0) {
time ++;
if(time == 3) {
time = 0;
person[i%MAX_LENGTH] = 0;
inNum --;
}
i++;
}
else {
i++;
}
}
for(int k=0 ;k<person.length ;k++) {
if(person[k] != 0){
System.out.println("最后留下的人:"+ (++k));
}
}
}
}
.