500个人围成一圈,从第一个人开始数数,数到第三个人,第三个人就退出,然后从第四个人开始继续数到3就退出一人,最后只城下一个人的时候就输出那个人的下标!
public class Count3Quit{
public static void main(String [] args){
int [] a =new int[500];
for(int i=0;i <a.length;i++){
a[i]=1; } int leftCount=500;
int countNum=0;
int index=0;
while(leftCount!=0){
if(a[index] == 1) { countNum++;
if(countNum==3){
leftCount--;
countNum=0;
a[index]=0;
}
}
index++;
if(index==a.length){
index=0;
}
}
for(int i=0;i <a.length;i++){
if(a[i] == 1) {
System.out.println(i);
}
}
}
}
public class Count3Quit{
public static void main(String [] args){
int [] a =new int[500];
for(int i=0;i <a.length;i++){
a[i]=1; } int leftCount=500;
int countNum=0;
int index=0;
while(leftCount!=0){
if(a[index] == 1) { countNum++;
if(countNum==3){
leftCount--;
countNum=0;
a[index]=0;
}
}
index++;
if(index==a.length){
index=0;
}
}
for(int i=0;i <a.length;i++){
if(a[i] == 1) {
System.out.println(i);
}
}
}
}
改为:while(leftCount!=1){ 就行了。