1. 程式人生 > >有1000桶酒,其中1桶有毒。而一旦吃了,毒性會在1周後發作。現在我們用小老鼠做實驗,要在1周後找出那桶毒酒,問最少需要多少老鼠

有1000桶酒,其中1桶有毒。而一旦吃了,毒性會在1周後發作。現在我們用小老鼠做實驗,要在1周後找出那桶毒酒,問最少需要多少老鼠

10只老鼠按順序排好,每桶酒按照編號轉換成二進位制,給相應位置上是1的老鼠喝。最後按死掉的老鼠是哪幾只,然後排成二進位制,再轉成十進位制就是第幾桶酒。

比如:第70桶酒,70轉換成二進位制就是0001000110,那麼就給第四、八、九隻老鼠喝。如果最後死掉第三、七、八隻老鼠,那麼就是0010001100,轉換成十進位制就是140,即140桶酒有毒。