用最少老鼠数找出7瓶药中的1瓶毒药

原文链接:https://www.jianshu.com/p/607d6683748b

https://blog.csdn.net/limitless1113/article/details/46681851

题目如下:现有7瓶药,其中有一瓶毒药,喝了之后1小时后才产生效果,现在你有1个小时的时间,请问找出那瓶毒药最少需要多少只老鼠?

现在有3只老鼠,那么我们以老鼠的死和排序作为一瓶药的编号。例如:

001 代表第一瓶药

010代表第二瓶药

011代表第三瓶药

100、101、110、111一次类推

将所有编号第1位是1的分在第1组,编号第2位是1的分在第2组,编号第3位是1的分在第3组。

因此,第一只老鼠(从右往左数)要喝的有1、3、5、7 四瓶药,第二只老鼠要喝的有2、3、6 、7三瓶药,第三只老鼠喝的是4、5、6、7 四瓶药。

第一只老鼠死了代表第一瓶是毒药,第二只死了代表第二瓶是毒药,第一和第二都死了代表第3瓶是毒药,第三只死了代表第4瓶是毒药,第一和第三死了代表第5瓶是毒药、、、以此类推

用10只老鼠可以找出1024瓶水中的1瓶毒药

原文地址:https://www.cnblogs.com/fswhq/p/mouse.html