import java.util.ArrayList;
/**
* @param args
*/
public class Test10 {
public static void main(String[] args) {
int LuckyPerson = getLucklyPerson(100);
System.out.println("最后剩下的是第"+LuckyPerson+"个人");
}
public static int getLucklyPerson(int num) {
ArrayList<Integer> list = new ArrayList<Integer>();//创建一个集合将数字作为人存入集合中.
for (int i = 1; i <= num; i++) {
list.add(i);
}
int count = 1;
for (int i = 0; list.size() != 1; i++) {//遍历集合中的数字,如果数到num时重新从0角标开始数,直至集合中的数字仅有1个.
if (i == list.size())
i = 0;
if (count % 14 == 0) // 数到14时 次角标对应的数字移去,角标需后退一个,不然会出现角标越界异常
list.remove(i--);
count++;
}
return list.get(0); //返回最后一个数字.
}
}
又是杀人环 楼主自己看
|