码迷,mamicode.com
首页 > 其他好文 > 详细

约瑟夫环

时间:2015-03-02 06:07:53      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:

 #region 约瑟夫环
        static void SuesfuRing()
        {
            Console.WriteLine("请输入几个人");
            int n = Convert.ToInt32(Console.ReadLine());

            int[] a = new int[n];
            int i = 0;
            for (i = 0; i < n; ++i )
            {
                a[i] = i + 1;
                Console.WriteLine("  " + a[i]);
            }
            Console.WriteLine("数到几被踢出");
            int m = Convert.ToInt32(Console.ReadLine());

            int k = 0;//记得报数
            int c = n;//剩余人数
            i = 0;
            while ( c > 1 )
            {
                if ( 0 != a[i] )
                {
                    k++;
                    
                }
                if ( k == m )
                {
                    Console.WriteLine("被踢出" + a[i]);
                    a[i] = 0;
                    k = 0;
                    c--;
                }
                i++;
                i %= n;
            }
            for ( i = 0; i < n; ++i )
            {
                if ( 0 != a[i] )
                {
                    Console.WriteLine("最后一个人是:" + a[i]);
                }
            }
            
        }
        #endregion

 

约瑟夫环

标签:

原文地址:http://www.cnblogs.com/lihonglin2016/p/4307872.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!