1 import java.util.ArrayList;
2 import java.util.Arrays;
3 import java.util.Iterator;
4
5 public class E80 {
6 public static void main(String[] args){
7 ArrayList<Integer> list=new ArrayList<Integer>();
8 for(int i=1;i<=80;i++){
9 list.add(i);
10 }
11 int j=1;
12 while(list.size()>1){
13 Iterator<Integer>it=list.iterator();
14 while(it.hasNext()){
15 it.next();
16 if (j%3==0){
17 it.remove();
18 }
19 j=j+1;
20 }
21 }
22 System.out.println(list);
23 }
24 }
简单讲解一下:其中每次循环 j 都是持续累加的,就算数到最后一个人 , j 也是不会停止加.
会从第一个继续数 , 但是 j 仍然是以三个为基数判断 .