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)+"号。");
}
}
时间: 2024-12-21 18:39:29