程序员面试智力题之分牌问题

  各大公司在招程序员的时候往往喜欢考一些智力题,我在笔试的时候就碰到过这样的一道题:有一堆牌共二十张,其中一共有七张是正面朝上。你在蒙着眼睛的情况下如何将这堆牌分成两堆,并且每堆牌里面正面朝上的牌的张数一样。这道题20分,当时我们班去了几个人,但是没有一个人想的出答案。

  这道题的解法很巧妙,回来在网上一搜,恍然大悟,原来是这样解!但当时笔试的时候却是绞尽脑汁也想不出个所以然。其实这种题有点像脑筋急转弯,如果你没想到点上去,是很难想出答案的,而且人往往受惯性思维的影响,特别是像我们这种受过十几年填鸭子般硬塞教育的大学生,思维很死板,很难转过这个弯。

  其实解法很简单,并不需要很强的数学知识,稍微开动下脑筋就想得到。解法是这样:把这堆牌分成七张和十三张的两堆,然后把七张这堆牌翻过来,这样两堆牌正面朝上的张数肯定是相等的。我们这样分析,假设七张这堆牌里正面朝上的张数为k,则另外一推牌里的正面朝上的张数为7-k,我们把七张这堆牌翻过来后正面朝上的牌数同样变成了7-k张,所以两堆牌正面朝上的张数相等。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值