黑马程序员技术交流社区

标题: 有100个人围成一个圈 [打印本页]

作者: binglin    时间: 2015-8-8 22:45
标题: 有100个人围成一个圈
/**
*第10题:有100个人围成一个圈,从1开始报数,报到14的这个人就要退出。然后其他人重新开始,从1报数,到14退出。
*     问:最后剩下的是100人中的第几个人?
**@author Zhangjian
*/
public class Test10 {
        public static void main(String[] args)
        {
                int a[]=new int[100];
                int k = 0,x=0,h=0;
                for(int i=0;i<100;i++)
                {
                        a[i]=i+1;
                }
                for(;x<100;)
                {
                for(int i=0;i<100-x;i++)
                {
                        ++k;
                        if(k==14-h)
                        {
                               
                                k=0;
                                h=1;
                                x++;
                                for(int j=i;j<99-x;j++)
                                {
                                        a[j]=a[j+1];
                                }
                        }
                       
                }
               
                }
                System.out.println("最后剩下的是100人中的第"+a[0]+"个人");
        }
}





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2