脑经急转弯似的面试题

1.有1000桶酒,其中1桶有毒。而一旦吃了,毒性会在1周后发作。现在我们用小老鼠做实验,要在1周后找出那桶毒酒,最少需要多少老鼠? (老鼠的使用量越少越好,注意,毒性1周后才会发作,而且一周后必须出结果,所以时间紧迫) ..

答:10只。

    这道题主要考的是二进制编码问题。

    将1000进行二进制编码,总共需要二进制位为10位。

    对老鼠进行编号:

        第一只老鼠:0000000001

        第二只老鼠:0000000010

        第三只老鼠:0000000100

        。。。

        第十只老鼠:1000000000

    每次,只让酒桶编号与自己编码相与为1的老鼠喝下酒,比如第一桶酒二进制编码为0000000001,就让第1只老鼠喝,第二桶酒二进制编码为0000000010,就让第2只老鼠喝,第三桶酒二进制编码为0000000011,就让第12只老鼠喝,。。。,第七十桶酒的二进制编码为0001000110。就让第2,3,7只老鼠喝。最后,如果是第12只老鼠死掉,说明是第三桶酒有毒,如果是第237只老鼠死掉,说明是第七十桶酒有毒。


猜你喜欢

转载自blog.csdn.net/lz1170063911/article/details/80287641