现有1000个同样瓶子,其中只有一个瓶子里是毒药,其他999个瓶子中均是...
发布网友
发布时间:2022-05-05 01:45
我来回答
共5个回答
热心网友
时间:2023-10-09 08:59
把1000瓶水编号:0~999
再转化成二进制数:0000000000~1111101000
每个二进制数都是唯一的,且与每个瓶子一一对应。
找到有毒的瓶子 == 找到有毒瓶子的二进制编号 == 确定有毒瓶子的二进制编号的每一位是0还是1。
问题转化成了:确定有毒瓶子的二进制编号的每一位是0还是1。
我们开始了:
每一个二进制编号都有10个位。
左数第一位的确定:把所有第一位为0的二进制数分为一组,让第一个小白鼠喝下,一周后第一个小白鼠死了,则说明有毒的瓶子的第一位为0,否则为1
左数第二位的确定:把所有第二位为0的二进制数分为一组,让第二个小白鼠喝下,一周后第二个小白鼠死了,则说明有毒的瓶子的第二位为0,否则为1
左数第三位的确定:把所有第三位为0的二进制数分为一组,让第三个小白鼠喝下,一周后第三个小白鼠死了,则说明有毒的瓶子的第三位为0,否则为1
。。。
左数第十位的确定:把所有第十位为0的二进制数分为一组,让第十个小白鼠喝下,一周后第十个小白鼠死了,则说明有毒的瓶子的第十位为0,否则为1
当然上面十个小白鼠喝水是同时进行的。这样下来一周后,有毒瓶子的二进制编号的10个位都能确定了,也就确定了哪个瓶子里的水有毒。
2^10=1024,用10只小白鼠一次试验最多能确定1024瓶水中哪一瓶有毒。当然如果1024瓶水中有2瓶、3瓶。。。有毒,就没有这么简单了。
热心网友
时间:2023-10-09 08:59
(1)把1000瓶子均匀分成(A、B、C、D、E、F、G、H)8分,每份125瓶,用三只老鼠的一只老鼠吃(ABCD)份,第二只老鼠吃(CDEF)份,第三只老鼠吃(ACEG)份;(2)再将(A、B、C、D、E、F、G、H)又细分成8份,如将A分成(a、b、c、d、e、f、g、h),同样将将BCDEFGH都分成8份,分别将a、b、c、d、e、f、g、h合并,第四只老鼠吃(abcd)份,第五只老鼠吃(cdef)份,第六只老鼠吃(aceg)份;(3)再做一次(2)过程;(4)最后你自己应该可以推出来了,如果没开明白欢迎追问
热心网友
时间:2023-10-09 09:00
我的笨办法,1000分为2组,每组500样物品,取一点放在一起,每组放一只白鼠。
牺牲一只小白鼠 ,保留下500分可能是毒药的,继续分
2 , 250
3 , 125
4 , 62或63
5 , 31或32
6 , 15或16
7 , 7或8
8 , 3或4
9 , 1或2
10 , 1
运气好的话,9只小白鼠就可以得到结果了
喝下毒药后一周才会死亡???只能用别的办法了。
题目提到“物理性状完全相同”完全相同,检验一下其他性状呗,比如溶不溶于水。。。。
热心网友
时间:2023-10-09 09:00
http://www.wisefy.com/viewthread.php?tid=3522&extra=page%3D1
里面有操作步骤,方便理解
热心网友
时间:2023-10-09 09:01
一瓶一瓶的给小白鼠吃,翘了得就是那瓶有毒