12
2017
08

有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数)凡报到3的人退出圈子,问最后留下 的是原来第几号的那位。

package HomeWork;

import java.util.Scanner;

/**
 * @类名:Lx_01
 * @描述:TODO(用一句话来描述该类的作用)
 * @作者:MaoDehao
 * @版本:1.0
 * @日期:2017-8-12下午4:30:29
 */
public class Lx_01 {

	public static void main(String[] args) {
		System.out.println("请输入原来有几个人:");
		Scanner input = new Scanner(System.in);
		int n = input.nextInt();
		int[] arr = new int[n];
		int index=0,i,k;
		for(i=0;i<arr.length;i++)
			arr[i]=i+1;
	
		i=0; 
		k=0; 
		
		while(index<n-1){//直到只剩下1人时
			if(arr[i]!=0)
				k++;
			if(k==3){
				arr[i]=0;
				index++; 
				k=0; 
			} 
			i++; 
			if(i==n)
				i=0; 
		} 
		
		for(i=0;i<n;i++)
			if(arr[i]!=0)
				System.out.println(arr[i]);

	}

}
« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

扫一扫,求打赏 扫一扫,求打赏