前端智力题——小白鼠问题?

一、题目

假设存在10000瓶药水,其中存在一瓶有毒,如果一只老鼠喝了一瓶有毒的药水,则
24h一定会死亡,问如果想要两天内一定查出是哪瓶药水有毒,至少需要多少小老鼠?

二、解题思路
假设我们只存在8瓶药水,如果在给定时间为24小时,此时至少需要多少个小老鼠

1   1   1
1   1   0
1   0   1
1   0   0
0   1   1
0   1   0
0   0   1
0   0   0

如上图所示,我们准备8只小老鼠,为1,则喝,为0,则不喝。如果第一只死了,剩下两只都没死,则为100,为第四瓶有毒。
下面我们再看看本道题:10000瓶药水,两天检测完成,此时我们每一天只需要检测5000瓶即可。所以我们可以知道2的12次方为4096,2的13次方为8192,所以我们可以知道至少为13只小白鼠。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值