8种药水有且仅有一种有毒,药水1小时见效,现在要求在1小时内找出有毒药水,至少需要几只小白鼠?

来源:互联网 发布:杀破狼 js原版 编辑:程序博客网 时间:2024/06/02 07:23

对于这个题,不同于二分法找有毒的情况,这个关键在于只能一次,这个是考察对二进制数据的理解,每只老鼠在8小时后都有一个状态,死亡或存活,对于题目,只有1个有毒,那么总共8情况。所以理论上3只老鼠就可以标识这8种状态了。

具体就是如何分配这些老鼠的问题,这个问题可以通过数字逻辑中的3-8编码器的思想来解决,在保证单映射的情况下怎么对应都是可以的。如下是一种对应方式。

0000_0001对应001

0000_0010对应010

0000_0100对应011

0000_1000对应100

0001_0000对应101

0010_0000对应110

0100_0000对应111

1000_0000对应000

阅读全文
0 0
原创粉丝点击