博客
关于我
经典面试智力题:老鼠和毒药问题(二进制应用)
阅读量:224 次
发布时间:2019-03-01

本文共 290 字,大约阅读时间需要 1 分钟。

老鼠和毒药

实验室有100个瓶子,其中有一瓶装有慢性毒药(第3天发作),另外99瓶装有蒸馏水。请问至少需要多少只小白鼠才能在3天内找出哪一瓶是慢性毒药?

利用二进制来做,最少的老鼠数量就是计算2的多少次方大于等于瓶子数量,例如本题为7。对100瓶进行二进制编码,这样可以排列出1xxxxxx,x1xxxxxx,...,xxxxxx1这样的七组序列。7只老鼠分别去喝这些组合的药。

第1只老鼠死了,说明有毒的药第1位一定是1,反之一定是0

同理第二只,第三只。。。

可以确定有毒药的药物的二进制表示。

这个思路是如何想到的,思想就是老鼠的状态只有01有两种,刚好和二进制表示相对应。

 

 

 

转载地址:http://hfqv.baihongyu.com/

你可能感兴趣的文章
Node-RED中使用html节点爬取HTML网页资料之爬取Node-RED的最新版本
查看>>
Node-RED中使用JSON数据建立web网站
查看>>
Node-RED中使用json节点解析JSON数据
查看>>
Node-RED中使用node-random节点来实现随机数在折线图中显示
查看>>
Node-RED中使用node-red-browser-utils节点实现选择Windows操作系统中的文件并实现图片预览
查看>>
Node-RED中使用node-red-contrib-image-output节点实现图片预览
查看>>
Node-RED中使用node-red-node-ui-iframe节点实现内嵌iframe访问其他网站的效果
查看>>
Node-RED中使用Notification元件显示警告讯息框(温度过高提示)
查看>>