试毒酒问题
问题
有1000桶酒,其中一桶有毒,小白鼠喝掉后会在一周后死亡,需要在一周找到哪一桶是毒酒,问至少需要多少只白鼠?
答案
1.先把1000桶酒编号,将编号转为2进制,总共10位二进制数。
2.10只老鼠排好顺序,每桶酒给相应位置上是1的老鼠喝,最后按死掉的老鼠是哪几只,然后排成二进制,再转成十进制就是第几桶酒。
比如:第70桶酒,70转换成二进制就是0001000110,那么就给第四、八、九只老鼠喝。如果最后死掉第三、七、八只老鼠,那么就是0010001100,转换成十进制就是140,即140桶酒有毒。