题目如下:
实验室里有1000个一模一样的瓶子,但是其中的一瓶有毒。可以用实验室的小白鼠来测试哪一瓶是毒药。如果小白鼠喝掉毒药的话,会在一个星期的时候死去,其他瓶子里的药水没有任何副作用。请问最少用多少只小白鼠可以在一个星期以内查出哪瓶是毒药?
我们先说结论,然后证明,答案是10只。
理解:
1、将瓶子先编号。1,2,...,1000 从1号到1000号,标签贴在每个瓶子上
2、将1到1024翻译成 二进制编码,0000000001,00000000010,..., 11111111111, 标签贴在对应的瓶子上
3、小白鼠从1-10号位置排排坐,然后开始喂药,先从1号瓶开始,按照二进制编码喂药,即前面1-9号小白鼠对应为0不喂,第10号鼠喂药; 轮到2号瓶子,只有9号位小白鼠上是1,所以只有9号位小白鼠喝到2号瓶子的药剂,依次喂完1000瓶。
4、10个小白鼠总的死法组合里面,每一种都对应着一瓶药剂的标签。例如9,10号死了,那么对于的二进制编码为0000000011,翻译成10进制即3号瓶子里面是毒药。
如果觉得《小白鼠试药问题》对你有帮助,请点赞、收藏,并留下你的观点哦!