110923
淘宝浙大场面试的一个题目, 在网上看到这个题目考查的好像是海明码的,哎呦,现在没有想通,还是先记录下来吧!
桌上有很多瓶液体,其中一瓶是毒药,其余全是蒸馏水,小白鼠如果喝了毒药5分钟后死亡,如果喝了蒸馏水则一切正常。现有5只小白鼠,给你5分钟的时间,请问能测试多少瓶液体(测试出这瓶液体是毒药还是蒸馏水)?
有四个选项 A、5瓶 B、6瓶 C、31瓶 D、32瓶 求答案以及原因。。。
网友答案:
1只老鼠 可以最多判断2瓶毒药 2^1
2只最多判断 4瓶毒药 2^2
3只 8 2^3
1 喝 1357
2 喝 2356
3 喝 4567
如果1 死 2 3 活 则 第1瓶有毒 二进制 也就是 001
如果2 死 1 3 活 则 第2瓶有毒 二进制 也就是 010
如果1 2 死 3 活 则 第3瓶有毒 二进制 也就是 011
如果3 死 1 2 活 则 第4瓶有毒 二进制 也就是 100
如果1 3 死 2 活 则 第5瓶有毒 二进制 也就是 101
如果2 3 死 1 活 则 第6瓶有毒 二进制 也就是 110
如果1 2 3 全死 则 第7瓶有毒 二进制 也就是 111
如果1 2 3 全活 则 第8瓶有毒 二进制 也就是1000
所以5只老鼠可以测2的5次方也就是32瓶