import java.awt.List;
import java.util.Iterator;
import java.util.LinkedList;
public class Prisoner {
public static void main(String[] args) {
fiveH();
}
public static void fiveH(){
LinkedList<Integer> linkedList = new LinkedList<Integer>();
for(int i = 1; i <= 500; i++){
linkedList.add(i);
}
System.out.println(kill(linkedList, 0));
}
public static int kill(LinkedList<Integer> linkedList, int first){
if(linkedList.size() == 1) return linkedList.getFirst();
if(linkedList.size() == 2) {
System.out.println(linkedList.get(0) + " " + linkedList.get(1));
linkedList.remove(first%2);
}
else {
int killed = 0;
for(int i = 0; i < linkedList.size() + killed; i++){
first++;
if(first%3 == 0){
System.out.println("kill:" + linkedList.get(i - killed));
linkedList.remove(i - killed);
killed++;
}
}
}
return kill(linkedList, first%3);
}
}
版权声明:本文为u010049708原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。