用小白鼠试验毒水问题
生活随笔
收集整理的這篇文章主要介紹了
用小白鼠试验毒水问题
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
問題一:8瓶水,其中一瓶有毒,問要找出有毒的水,你至少要嘗試幾次?(前提是毒不死人的)
問題二:還是這個題目,另外提供一群小白鼠,現(xiàn)在要你同時給N只小白鼠喝水,問至少需要幾只小白鼠能一次性找出毒水?
問題一比較簡單,二分法,假設(shè)瓶子編號依次為0 1 2 3 4 5 6 7,先等分成2份,然后從其中一份中取出點水混合下,喝,有問題則毒水在這份中,沒問題則毒水在另一份中,然后再二分,這樣只需要嘗試3次, 2^3=8。
問題二:至少需要3只小白鼠,二進制思想2^3=8,小白鼠喝完水的狀態(tài)只有2種,要么生要么死,因此要判斷8瓶水,必須要有3只白鼠才可以。
A B C
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
A B C分別是三只小白鼠,每只白鼠喝編號為它的下面出現(xiàn)1的數(shù)字代表的瓶,如A喝 4 5 6 7瓶,B喝 2 3 6 7,C喝1 3 5 7。或者喝下面出現(xiàn)0的數(shù)字代表的瓶也行。
問題二:還是這個題目,另外提供一群小白鼠,現(xiàn)在要你同時給N只小白鼠喝水,問至少需要幾只小白鼠能一次性找出毒水?
問題一比較簡單,二分法,假設(shè)瓶子編號依次為0 1 2 3 4 5 6 7,先等分成2份,然后從其中一份中取出點水混合下,喝,有問題則毒水在這份中,沒問題則毒水在另一份中,然后再二分,這樣只需要嘗試3次, 2^3=8。
問題二:至少需要3只小白鼠,二進制思想2^3=8,小白鼠喝完水的狀態(tài)只有2種,要么生要么死,因此要判斷8瓶水,必須要有3只白鼠才可以。
A B C
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
A B C分別是三只小白鼠,每只白鼠喝編號為它的下面出現(xiàn)1的數(shù)字代表的瓶,如A喝 4 5 6 7瓶,B喝 2 3 6 7,C喝1 3 5 7。或者喝下面出現(xiàn)0的數(shù)字代表的瓶也行。
總結(jié)
以上是生活随笔為你收集整理的用小白鼠试验毒水问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux面试题中的简答题,[计算机]l
- 下一篇: 计算机图形学基础-第二章 VB.NET