C_逻辑题
LingXi__Y
“疯子的世界,诗人在游走!”
展开
-
C_逻辑题: 常胜将军
规则:21根火柴,双方交替取,最少一根,最多四根。取到最后一根的人输,现在让人先取。设计程序让计算机必胜。逻辑分析: 既然是人先取,想让人取最后一根。必须在完整的回合数内取完前面的20根, 因为规则为最少1,最多4,,所以一回合取走的火柴数量范围是2~8; 在这个范围内,电脑唯一可以控制的数量是5。 这样四个回合结束,刚好剩最后一根火柴给人。 所以如果每次人取x根,电脑就取5-x根。#in原创 2017-06-24 08:58:01 · 654 阅读 · 0 评论 -
C_逻辑题:0-7所有的奇数
审题不仔细的人,极容易自作聪明的在77777777范围内去计算奇数的个数。 忽略了数字8,9的缺失。笨一点的方法是用8个for循环来拼数字,此种做法只需要顾忌最高位不为零的情况即可。但本题的最佳思路如下: 1,组成的数字不一定非得是8位数,从一位到八位都可以。首先绕过惯性思维这个坑。 2,既然是奇数,那么末尾只能是1,3,5,7。所以个位数所有的可能情况是4。 3,最高位不能为0,所以最高位原创 2017-06-23 21:25:40 · 2937 阅读 · 0 评论 -
C_逻辑题: 石头,剪刀,布
胜负逻辑判断的巧妙转换原创 2017-06-22 00:08:24 · 2245 阅读 · 0 评论 -
C_逻辑题:海盗很厚道
海盗一行七人,在海上打劫了一艘富商的商船,得到很多金币。当晚为了庆祝战果喝了很多酒后,回到各自的船舱睡的不省人事。第二天第一个海盗醒来,从抢来的金币中拿出一枚扔向大海,以表达对海神的敬意。然后将剩下的金币平分成七份,自己带走其中一份离开。第三天第二个海盗醒来,他不知道第一个海盗已经走了,于是也从抢来的金币中拿出一枚扔向大海。然后将剩下的金币平分成七份,自己带走其中一份离开。随后的五天,剩下的五个海盗原创 2017-06-30 15:38:22 · 833 阅读 · 0 评论 -
C_穷举法:求24点
输入4个十以内的整数,要求用加减乘除运算符和括号组成表达式,要求表达式的值等于24,打印出所有可能。分析:1,四个数字,中间需要填三个运算符,一共4 * 4 * 4 = 64种组合 2,四个数字运算时,是两两结合。考虑到括号的存在,所以结合方式总共有5种,如下: ((a#b)#c)#d (a#(b#c))#d a#((b#c)#d) a#(b#(c#d)) (a#b)#(c#d) 3,原创 2017-06-30 15:53:08 · 1010 阅读 · 0 评论 -
C_逻辑题:魔鬼的晚餐
我给大家讲一个故事:从前有一个魔鬼,它变态了......原创 2016-09-02 20:04:38 · 586 阅读 · 1 评论 -
C_数组-循环-递归分别处理约瑟夫环
约瑟夫问题原创 2017-12-13 17:47:42 · 1153 阅读 · 1 评论