有1000桶酒,其中1桶有毒.而一旦吃了,毒性会在1周后发作.现在我们用小老鼠做实验,要在1周内找出那桶毒酒,问最少需要多少老鼠.

选项是:9只、10只、32只、999只、以上都不是.

 

答案:10

一只老鼠喝酒后又两种状态:死(0)和活(1).
所以10只老鼠就能表示1024个状态(2的10次方).
1000桶酒中任何一桶酒的编号都能转化为二进制,比如:第九桶酒 9= 2^0 + 2^3

 

假设:

  如果最后死掉第三、七、八只老鼠,那么就是0011000100,转换成十进制就是196,即196桶酒有毒。
  如果是第3和第10只老鼠死掉,即是:1000000100,转换10进制为2^2+2^9=4+512=516桶酒有毒

 

这道题,思想是:10头老鼠+生死2状态,可以描述1024(2^10)个数字。要有二进制思想,就像面试的时候,让你画一棵树,你想都不要想,一定是二叉树。

 

2020年10月26日更新:

  今天无意中看到这道题的另类“解题”思路,我觉得非常有意思,这里记录下来。

  如果这个问题询问公关公司,他们想都不用想,随便倒掉一瓶水,弄死一只老鼠,然后对外宣布:找到了那瓶有毒的酒,破解了毒药,如果有人不服自己来尝尝,生死概不负责!

   逻辑角度很6!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值