报数游戏
十个人围成一圈,从1到3开始报数,依次循环,报到3的人被淘汰,一直淘汰到剩余一个人结束游戏。
public class Circle {
public static int circle(int []arr) {
int count=0;
int count1=0;
int index=0;
while (true) {
index+=1;
count+=1;
index=(index > 0 && index < arr.length) ? index : (index % arr.length);
if (count == 3) {
count=0;
arr[index]=-1;
count1+=1;
}
if (count1 == 9) break;
}
for (int i=1;i<arr.length;i++) {
if (arr[i]!=-1){
return arr[i];
}
}
return -1;
}
public static void main(String[] args) {
int []arr=new int[11];
for (int i=0;i<arr.length;i++){
arr[i]=i;
}
System.out.println(circle(arr));
System.out.println(Arrays.toString(arr));
}