小白鼠试毒药,最少需要多少即可试出结果

有 1000  桶酒,其中 1  桶有毒。而一旦吃了,毒性会在 1  周后发作。现在我们用小老鼠做

实验,要在 1  周内找出那桶毒酒,问最少需要多少老鼠。

一只老鼠喝酒后又两种状态:死(0)和活(1).

所以10只老鼠就能表示2的10次方个状态(即1024个)。2^0表示2的零次方。2^8表示2的8次方。

设有10只老鼠编号分别为2^0,2^1, 2^2, 2^3, 2^4, 2^5, 2^6, 2^7, 2^8, 2^9。有1000桶酒编号为1,2,3。。。。一直到 1000。

任何一桶酒的编号都能分解为2的幂指数之和的形式,而且唯一。比如:第九桶酒 9= 2^0 + 2^3

(那么我们就让编号为2^0和 2^3的这两只老鼠去喝这桶酒)最后只要看哪几只老鼠死了就知道是哪桶酒有问题。(只要把死了的老鼠编号加起来就是酒桶的编号)

10只老鼠按顺序排好,每桶酒按照编号转换成二进制,给相应位置上是1的老鼠喝。最后按死掉的老鼠是哪几只,然后排成二进制,再转成十进制就是第几桶酒。

比如:第70桶酒,70转换成二进制就是0001000110,那么就给第四、八、九只老鼠喝。如果最后死掉第三、七、八只老鼠,那么就是0010001100,转换成十进制就是140,即140桶酒有毒。

(PS:其实与之相似的还有一类题目,有很多桶蒸馏水,其中有一瓶是有毒的,那么使用5只小白鼠最多可以鉴定多少瓶蒸馏水,答案是31瓶,因为5位最大可以表示31.原理和这个类似)

时间: 2024-10-11 00:37:59

小白鼠试毒药,最少需要多少即可试出结果的相关文章

关于数字的智力题-小白鼠与毒药

题目: 有1000瓶药物,但是其中有一瓶是有毒的,小白鼠吃了一个星期以后就会死掉!请问,在一个星期内找出有毒的药物,最少需要多少只小白鼠? 解答: 用二进制的思路去思考,1000瓶药代表了1000种状态,那么1000用二进制表示可以用一个10位的二进制数就可以全部表示出来,考虑用十只白鼠来试验,用0和1代表它们最终的状态即死亡或活着,初始状态十只白鼠表示为0000000000. 关于数字的智力题-小白鼠与毒药,布布扣,bubuko.com

用小白鼠喝毒药

题设:有N瓶水,其中有一瓶水有剧毒,如果小白鼠喝了会在24小时的时候死亡. 问:用多少只小白鼠能够检测出哪瓶水有剧毒? 要求:用的小白鼠数量少并且用时要短,并给出合理的过程与结论. 我的解题思路如下: 这是一个二进制开关(0/1)问题,类比于海明码校验算法,将药水进行二进制编号(0000000,0000001,0000010,0000011...),算出至少多少位二进制能够将所有的小白鼠进行完全编号: 然后根据二进制的位数选取小白鼠,将小白鼠对应于相应二进制位,之后去依次遍历不同小白鼠的相同位,

小白鼠试毒药问题

题目如下: 实验室里有1000个一模一样的瓶子,但是其中的一瓶有毒.可以用实验室的小白鼠来测试哪一瓶是毒药.如果小白鼠喝掉毒药的话,会在一个星期的时候死去,其他瓶子里的药水没有任何副作用.请问最少用多少只小白鼠可以在一个星期以内查出哪瓶是毒药:    a. 9    b. 10    c. 32    d. 999    e. 以上都不对 这个题目很简单,拿来复习信息论和二进制编码的粗浅知识刚好合适. 首先呢,如果让我使用我的LabTop解题,那么简单了,用1000只小白鼠去试验,将瓶子和白鼠编

我是一只小白鼠

我是一只小白鼠,我可能很胆小.因为我害怕,我怕自己不够好.我怕被别人比下去.我怕我会落后.我怕学历不如别人.我怕我没有别人过得好... 所以我一直在努力,一直像一只小白鼠一样,不断试验着.我不会说:是被别人不断做试验,我想说:我是我的小白鼠,我是自己不断的试验.我在尝试着,尝试着去改变我的生活. 2010年我初中毕业,现在2016年了.偶尔会回想过去和现在,发现自己真的懂事了不少,对于我而言,三观早改了.很多时候我都感觉,我像是成功了一样的幸福感和幸运感.我今年22岁,我所指的成功,并非金钱或者

2943:小白鼠排队-poj

2943:小白鼠排队 总时间限制:  1000ms 内存限制:  65536kB 描述 N只小白鼠(1 < N < 100),每只鼠头上戴着一顶有颜色的帽子.现在称出每只白鼠的重量,要求按照白鼠重量从大到小的顺序输出它们头上帽子的颜色.帽子的颜色用“red”,“blue”等字符串来表示.不同的小白鼠可以戴相同颜色的帽子.白鼠的重量用整数表示. 输入 输入第一行为一个整数N,表示小白鼠的数目.下面有N行,每行是一只白鼠的信息.第一个为不大于1000的正整数,表示白鼠的重量,:第二个为字符串,表示

题目1110:小白鼠排队 Java

题目描述: N只小白鼠(1 <= N <= 100),每只鼠头上戴着一顶有颜色的帽子.现在称出每只白鼠的重量,要求按照白鼠重量从大到小的顺序输出它们头上帽子的颜色.帽子的颜色用"red","blue"等字符串来表示.不同的小白鼠可以戴相同颜色的帽子.白鼠的重量用整数表示. 输入: 多案例输入,每个案例的输入第一行为一个整数N,表示小白鼠的数目. 下面有N行,每行是一只白鼠的信息.第一个为不大于100的正整数,表示白鼠的重量,:第二个为字符串,表示白鼠的帽

1110.小白鼠排队

题目描述: N只小白鼠(1 <= N <= 100),每只鼠头上戴着一顶有颜色的帽子.现在称出每只白鼠的重量,要求按照白鼠重量从大到小的顺序输出它们头上帽子的颜色.帽子的颜色用"red","blue"等字符串来表示.不同的小白鼠可以戴相同颜色的帽子.白鼠的重量用整数表示. 输入: 多案例输入,每个案例的输入第一行为一个整数N,表示小白鼠的数目. 下面有N行,每行是一只白鼠的信息.第一个为不大于100的正整数,表示白鼠的重量,:第二个为字符串,表示白鼠的帽

小白鼠排队

题目描述 N只小白鼠(1 <= N <= 100),每只鼠头上戴着一顶有颜色的帽子.现在称出每只白鼠的重量,要求按照白鼠重量从大到小的顺序输出它们头上帽子的颜色.帽子的颜色用"red","blue"等字符串来表示.不同的小白鼠可以戴相同颜色的帽子.白鼠的重量用整数表示. 输入描述: 多案例输入,每个案例的输入第一行为一个整数N,表示小白鼠的数目. 下面有N行,每行是一只白鼠的信息.第一个为不大于100的正整数,表示白鼠的重量,:第二个为字符串,表示白鼠的

LINUX小白重装上百次后, 最终找出一个成功方案 CentOS LAMP +wordpress+phpmyadmin 共0.84G

折腾了几天,终于找到很节省资源的安装wordpress方案. 成功搭建网站 http://www.gudianxiaoshuo.com     and   http://www.gudianbook.com 同时向大家推荐下wordpress建站利器 书画小说软件4.0版  我的网站 就是用这个软件搭建的  222本书 15000余篇文章 共用8个半钟头左右. 好了,转回正题,入手了一台LINUX VPS  进去一看 黑乎乎的DOS  立马傻眼.  更可恨的是没有提供相关资料,只能去自己找.自己