【程序37】Test3Quit.java 标题:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最 //后留下 的是原来第几号的那位
【程序37】Test3Quit.java 题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最 //后留下 的是原来第几号的那位。
//【程序37】 Test3Quit.java 题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最 //后留下 的是原来第几号的那位。 import java.util.*; public class Test3QuitApp { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Test3Quit tq=new Test3Quit(); tq.test(6); } } class Test3Quit{ public void test(int n){ boolean[] per=new boolean[n]; for(int i=0;i<per.length;i++){ per[i]=true; } int t=0,len=per.length; while(len>1){ for(int i=0;i<per.length;i++){ if(per[i]){ t++; if(t==3){ t=0; per[i]=false; len--; } } } } System.out.println("最后的情况:" + Arrays.toString(per)); for (int i = 0; i < per.length; i++) { if (per[i]) { System.out.println("原来喊的数:" + (i+1)); break; } } } }