一道有点意思的逻辑题

题目大概是这样:小孩玩游戏,手拉手围成一个圈,然后数数.每次数到3的时候这个小孩退出,下一个从1开始再数. 试问,如果有500个小孩,最后剩下的小孩是原来的第多少个小孩.

开始想的时候觉得很有意思,然后就试着写代码实现。试了几种写法,先发一个比较满意的

public class ChildThreeDel
    {
        public static void main(String[] args)
        {
            bool[] arr = new bool[500];
            for (int i = 0; i < arr.Length; i++)
            {
                arr[i] = true;
            }
            int _count = arr.Length;
            int countNum = 0;
            int index = 0;
            while (_count > 1)
            {
                if (arr[index] == true)
                {
                    countNum++;
                    if (countNum == 3)
                    {
                        countNum = 0;
                        arr[index] = false;
                        leftCount--;
                    }
                }
                index++;
                if (index == arr.Length)
                {
                    index = 0;
                }
            }
            for (int i = 0; i < arr.Length; i++)
            {
                if (arr[i] == true)
                {
                    Console.WriteLine(i+1);
                }
            }
            Console.Read();
        }
    }
时间: 2024-09-21 05:37:12

一道有点意思的逻辑题的相关文章

逻辑题:猜年龄

在CSDN程序人生微信公众号里,发了一道逻辑题,觉得挺有意思,特地拿出来,分享一下. 题目:某公司的两位科学家(甲.乙)去吃饭,坐在一家酒店靠近街道的窗口座位吃饭,在等待上菜的过程中,闲极无聊,甲向乙出了一道猜三个女儿年龄的题目. 甲:我有3个女儿,3人年龄之积等于36: 乙:猜不出来: 甲:3个女儿年龄之和等于街道上的行人数: 乙:还是无法确定: 甲:我的大女儿叫苏珊. 乙:哦,我知道了. 请问:甲的3个女人年龄各是多少? 分析: 共有3个条件,根据条件1,3人年龄之积等于36,因此可能有如下

一道超级坑爹的水题(ACdream oj 无耻的出题人)

 A - 无耻的出题人 Time Limit: 2000/1000 MS (Java/Others)      Memory Limit: 65536/32768 KB (Java/Others) Submit Status Problem Description 听到X神要参加比赛,只会Fibnacci数的出题人被吓得哭晕在厕所.为了防止X神AK(ALL KILL)比赛题目,无耻的出题人只好在题面上做些手脚(加密).其中一道题的题目描述如下: hjxh dwh v vxxpde,mmo i

2014百度之星资格赛 1001:Energy Conversion(水题,逻辑题)

Energy Conversion Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4278    Accepted Submission(s): 1024 Problem Description 魔法师百小度也有遇到难题的时候-- 现在,百小度正在一个古老的石门面前,石门上有一段古老的魔法文字,读懂这种魔法文字需要耗费大量的能量和大量的

一道简单的递推题(快速幂+矩阵乘法优化+滚动数组)

问题 F: 一道简单的递推题 时间限制: 1 Sec  内存限制: 128 MB提交: 546  解决: 48[提交][状态][讨论版] 题目描述 存在如下递推式: F(n+1)=A1*F(n)+A2*F(n-1)+...+An*F(1) 求第K项的值对1000000007取模的结果 输入 单组测试数据 第一行输入两个整数 n , k (1<=n<=100,n<k<=10000000000) 第二行输入 n 个整数 F(1)   F(2)   ...   F(n) 第三行输入 n

记一道毫无思路的算法题

今天贤内给了我一道很实际的算法题,把我彻底难住了,实在想不出来,于是写此博文以记之. 背景是这样的,现在有一个付款明细的Excel,里面有为哪个发票,哪个公司应付多少钱的明细,明细数据是62条,现在知道我们已经付出的金额为Sum,请问到底哪些发票是已付款的. 这是62条明细数据: 653165.00 356029.11 220896.45 146362.00 1847670.00 3018518.91 1347553.07 145010.74 339784.84 199350.28 120611

【求助】一道考验脑细胞的编程题

要求计算S的面积.注意:仅计算面积,不区分正负,如果围成的图形被x轴分割为上下两部分,那么就求上下两部分面积之和. 输入多项式fx,以字符串表示,格式为:4*x^5-x^2+5*x+12,多项式表达式不包含括号,可能包含空格.数字.字母x.^.*.+.-,保证多项式最高次幂为非负整数,且最高次幂不超过10. 表达式中4*x^5与4x^5等价,如下面的表达式是合法的: x^10-5x^1 -4*x^1 + 5x^0 2.3x^4 - 2.56*x + 1 输入不会出现下列类型的表达式: x(x+5

腾讯算法逻辑题

前几天小生去了一趟腾讯,接受前端大大的虐待. 整个过程充斥着各种血与泪,特别是他们的算法逻辑题,让我甚是上心.遂mark下,以求甚解... 经过一番思考以及和小伙伴们的共同探索,总算代码的运行结果是符合题目要求了,不过也不确定是否是最佳答案... 且不管了,如果知道有更好的答案再更新便是.. 有人也许会说,骚年,你这样把题目发出来真的好吗?这样不担心是个人都有种去企鹅面前装13吗? 那么我可以很负责任的说,这几道题只是餐前小菜.真正的风浪在后头,假如谁天真的以为有了这几道题就稳了,小心被人当猴看

iOS面试的一个逻辑题

一个同行的朋友前往某公司面试,在笔试的最后一题,出了这么一个问题:(分值为20分) 一个很古老的村子,这个村子的人分两种,红眼睛和蓝眼睛,这两种人并没有什么不同,小孩在没生出来之前,没人知道他是什么颜色的眼镜,这个村子中间有一个广场,是村民们聚集的地方,现在这个村子有三个人,分住三处,在这个村子,有一个规定,就是如果一个人能知道自己眼睛的颜色并且在晚上自杀的话,他就会升入天堂,这三个人不能够用语言告诉对方眼睛的颜色,也不能用任何方式提示对方的眼睛是什么颜色,而且也不能用镜子,水等一切有反光的物质

ACM_一道耗时间的水题

一道耗时间的水题 Time Limit: 2000/1000ms (Java/Others) Problem Description: Do you know how to read the phone numbers in English? Now let me tell you. For example, In China, the phone numbers are 11 digits, like: 15012233444. Someone divides the numbers into