关于1000杯水一杯有毒用10鼠检验问题解答 by强

  • Post author:
  • Post category:其他


关于1000杯水一杯有毒用10鼠检验问题解答 by强

** 运用二进制解决这个问题**

导语:首先要了解有关二进制的知识“二进制是用0和1两个数码来表示的数。它的基数为2,进位规则为‘逢二进一’,类似于我们所熟悉的十进制”。

分析:用十进制表示这1000杯水,可以用 1 ,2,3 ,4, 5……1000这一千个数字表示,同理,也可以用二进制来表示:0000000000,0000000001,0000000010,……1111101000。运算方法可参考

(1000÷2 = 500 余 0

500÷2 = 250 余 0

250÷2 = 125 余 0

125÷2 = 62 余 1

62÷2 = 31 余 0

31÷2 = 15 余 1

15÷2 = 7 余 1

7÷2 = 3 余 1

3÷2 = 1 余 1

1÷2 = 0 余 1

反向读余数为1111101000)

于是,我们可以开始解决这个问题了

用二进制表示的1000杯水编号写下来,如0000000001 0000000010 0000101001

然后就是喝水环节,怎么喝呢

如上面的三杯水的安排为

1:第十只鼠喝

2:第九只鼠喝

3:第五第七第十只喝

以此类推 把这一千杯水分配给10只鼠;

然后 结果就会出现一部分小鼠死亡(这就意味着我们可以得出哪杯水有毒了)

如: 第3,5,7,8,9,这5只鼠死亡

对应为 0010101110这杯水

十进制为 174(运算为:1

2

7+1*2

5+1

2

3+1*2

2+1*2^1)

意思是 第174杯水有毒



版权声明:本文为weixin_51258418原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。