//{1,2,3,4,5,6,7,8,9,0}第一輪的淘汰爲:{0,0,1,0,0,1,0,0,1,0}
import java.util.Arrays;
public class Work105 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr={1,2,3,4,5,6,7,8,9,10};
int[] arrB=new int[arr.length];//淘汰標記組
int cont=0,//全局循環計數,到3的倍數就淘汰人
flg=0;//已淘汰人數
System.out.println("淘汰過程如下:");
while(true){
for (int i = 0; i < arr.length; i++) {
if(arrB[i]==1){//說明這個人已經淘汰,此人跳過
continue;
}else{
cont+=1;//計數器+1
if(cont%3==0){//如果這個人/3=0
arrB[i]=1;//這個人淘汰
}
}
}
//輸出淘汰情況
System.out.println(Arrays.toString(arrB));
//統計已淘汰人數淘汰
for (int i = 0; i < arrB.length; i++) {
if(arrB[i]==1){
flg++;
}
}
if(flg==arr.length-1){//若只剩一人,則結束循環
break;
}else{//若剩餘多餘一人,則繼續循環
flg=0;
}
}
System.out.println("原來爲:\n"+Arrays.toString(arr));
for (int i = 0; i < arrB.length; i++) {
if(arrB[i]==0){
System.out.println("經過淘汰,最後剩下的是:"+arr[i]);
}
}
}
}
輸出結果如下: