假设只有 9 瓶水,只有一瓶有毒,需要多少老鼠就可以检测出有毒的那一瓶水,可以通过位掩码用来处理经典的”老鼠试药“的问题

这里用其编号用二进制表示瓶的个数,可以列出下表,比如 0001 代表 1 号瓶,0002 代表 2 号瓶。。。

00011号
00102号
00113号
01004号
01015号
01106号
01117号
10008号
10019号
老鼠A老鼠B老鼠C老鼠D 

上面老鼠 ABCD 分别意思是药水混合,比如老鼠 A 喝的是 8 和 9 号,老鼠 C 喝的是 2,3,6,7 号的混合

如果老鼠 B 和老鼠 C 都死了,对应的编码是 0110,有毒的是 6 号,如下图

老鼠A老鼠B老鼠C老鼠D
0110

那如果是 8 瓶药水呢?需要几只老鼠?欢迎解答。