import java.util.Scanner; public class Fiftheen { /*有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。*/ public static void main(String[] args){ Scanner input=new Scanner(System.in); System.out.print("请输入围圈的人数:"); int a=input.nextInt(); System.out.println(" "); int[] b=new int[a]; int i,j,k=0,m=0,n=0; for(i=1;i<a;i++) b[i]=i; while(a!=1){ if(k>0){ if(n==1){ b[1]=99099; m=2; } else if(n==2){ b[0]=99099; m=1; } else m=0; } n=0; for(i=m;i<a;i++){ n++; if(n==3){ n=0; b[i]=99099; } } for(i=0;i<a;i++) if(b[i]==99099){ for(j=i;j<a-1;j++) b[j]=b[j+1]; a--; i--; } k++; } System.out.println("最后留下的为原来的"+(b[0]+1)+"号。"); } }