当前位置:首页 » 《随便一记》 » 正文

智力题|小白鼠喝毒药_Ersansui的博客

20 人参与  2021年11月18日 17:23  分类 : 《随便一记》  评论

点击全文阅读


智力题,也可以称为逻辑题,是一种在面试的时候可能会被面试官问到的题目。

因此,我们有足够的理由,花费一定的时间在这类题目上面,以此来提高我们的逻辑思维能力。

(该系列会持续更新哦!)
在这里插入图片描述


今天,我们先来探讨一个经典的题目——小白鼠喝毒药。

问题如下:

有1000个一模一样的瓶子,其中有999瓶是普通的水,有1瓶是毒药。
小白鼠喝下毒药后都会在一星期之后死亡。
现在你只有10只小白鼠和1个星期的时间,如何检验出哪个瓶子有毒药?

分析:

既然是智力题,就不能用普通的思维来思考,我们需要另辟蹊径。

方法一:

因为其中有一瓶是毒药,那么理论上来讲,这瓶毒药完全有可能会把小白鼠的肉给腐蚀掉。

那么我们就可以这样做:我们先把这10只小白鼠剁成肉馅,

(这样做貌似很残忍啊)

(;´д`)ゞ

然后分别把肉馅放到这1000个瓶子当中,等待一个星期,看哪个瓶子的肉变质了,那么就可以确定哪一瓶就为毒药。

当然,这并不是一个好方法,而且如果你在面试的时候这样回答,会让面试官哭笑不得的

┑( ̄Д  ̄)┍

方法二:

既然是智力题,那么我们可以转换思维,用二进制的方法来思考。

我们知道,2^10=1024,而恰好1000<1024,

那么我们就可以用二进制序列来表示每一个瓶子。

在这里插入图片描述

而我们也可以给每一位小白鼠编号。

这样每1位小白鼠就对应了1个二进制位,总共可以表示10个二进制位。

我们让小白鼠从1到10分别对应从右往左的10个二进制位,并且让每一位小白鼠喝掉其对应二进制位上为1的瓶子的水(或者毒药)。

(喝掉对应二进制位上为0的水或者毒药同理)

那么,一个星期后,我们观察有那些小白鼠死亡,就可以确定该小白鼠对应二进制位上为1的瓶子装有毒药。

举例:
例如,编号为1、3、4、7、8的小老鼠死去,则说明装有毒药的那个瓶子的编号在第1、3、4、7、8的二进制位上位1,其余位为0

因为,假如其余位不为0,而为1的话,对应该二进制位的小白鼠也会死亡

所以我们可以确定,装有毒药的瓶子的编号为:0 011 001 101,转换为十进制就是205。

至此,我们就把这个问题解决啦!

如果各位同学还有其他更好的解法,欢迎在评论区讨论哦!


创作不易,希望大家可以点赞、评论、转发、关注一条龙哦!

你们的支持是我创作最大的动力!!

在这里插入图片描述


点击全文阅读


本文链接:http://zhangshiyu.com/post/31015.html

毒药  小白鼠  瓶子  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1