小白鼠喝毒水问题(一分为二的思想)

问题描述: 

有16瓶药水,其中一瓶有毒,一只小白鼠喝过之后,一天之后会死亡,要求一天后,至少多少只小白鼠,可以找出有毒药水。


问题解决:

这个问题很经典,然而网上多是二进制转十进制思想。

我在这里尝试用一分为二的逻辑,测试出这瓶毒水来。

我在这里画图,吨吨吨表示小白鼠喝下了药水。


 

  药水1 药水2 药水3 药水4 药水5 药水6 药水7 药水8 药水9 药水10 药水11 药水12 药水13 药水14 药水15 药水16
小白鼠1

吨吨吨

吨吨吨 吨吨吨 吨吨吨 吨吨吨 吨吨吨 吨吨吨 吨吨吨                
小白鼠2 吨吨吨 吨吨吨 吨吨吨 吨吨吨         吨吨吨 吨吨吨 吨吨吨 吨吨吨        
小白鼠3 吨吨吨 吨吨吨     吨吨吨 吨吨吨     吨吨吨 吨吨吨     吨吨吨 吨吨吨    
小白鼠4 吨吨吨   吨吨吨   吨吨吨   吨吨吨   吨吨吨   吨吨吨   吨吨吨   吨吨吨  

显然,只有喝了药水的小白鼠才有死的可能性。

因此,如果哪只小白鼠死了,它只能是因为吨吨吨了毒药水。

如果小白鼠没死,说明喝的药水没有毒,可以排除。

一只一只筛选。

直到锁定有毒的那一瓶。

四只小白鼠的死亡状态的那一列,对应了有毒的药水。

猜你喜欢

转载自blog.csdn.net/sinat_39416814/article/details/92801440