老鼠試毒問題

2021-10-23 12:02:20 字數 585 閱讀 4903

7瓶水1瓶有毒3只老鼠,怎麼找有毒的水,再加個條件,必須要求第二天出結果

二分查詢思路,每次均分兩組,每組各取一滴水混合成新溶劑餵給老鼠,繼續對導致老鼠死亡的一組水進行同上操作。假如是第1瓶有毒,過程演繹如下,第一只老鼠死於前一堆(mid=(0+6)/2=3, 即服用了第1、2、3、4瓶的混合溶劑),第二隻老鼠死於前一堆(mid=(0+3)/2=1, 即服用了第1、2瓶的混合溶劑),第三隻老鼠隨意試一瓶,根據服用後狀態即可判斷有毒的水。

二進位制編碼思路,對每瓶水二進位制編碼,所需編碼位數正好為三位,將第一 位是1的水混為新溶劑餵給第乙個老鼠,以此類推,看三隻老鼠服用狀態(死亡=1,存活=0)得出對應的編碼,找到對應的水即可。假如是第1瓶有毒,編碼之後,讓第一只老鼠服用第4、5、6、7瓶的混合溶劑,第二隻老鼠服用第2、3、6、7瓶的混合溶劑,第三隻老鼠服用第1、3、5、7瓶的混合溶劑,最終第一只和第二隻老鼠存活,第三隻老鼠死亡,對應編碼為001,對應的水是第一瓶,故此瓶有毒。

第一瓶水001

第二瓶水010

第三瓶水011

第四瓶水100

第五瓶水101

第六瓶水110

第七瓶水111

經典智力題 老鼠試毒

1 1000瓶毒藥要至少多少只老鼠,假設每只老鼠吃了藥之後,如果中毒會24小時內毒發而死,才能找出具體的哪一瓶?答案是至少10只,需要將藥混合起來,需要喂一輪。位運算,每乙隻老鼠都可以當做乙個二進位,代表0和1,0代表老鼠沒事,1代表老鼠死了 根據2 10 1024,所以至少10個老鼠可以確定100...

老鼠試毒 兩輪試驗

大家應該都聽說過這個老題目 有 1000 個一模一樣的瓶子,其中有 999 瓶是普通的水,有一瓶是毒藥。任何喝下毒藥的生物都會在一星期之後死亡。現在,你只有 10 只小白鼠和一星期的時間,如何檢驗出哪個瓶子裡有毒藥?這個問題的答案也堪稱經典 把瓶子從 0 到 999 依次編號,然後全部轉換為 10 ...

老鼠繁殖問題 老鼠有死亡

同學的同學問了這樣乙個問題 有一對小老鼠,出生一周後長成一對大老鼠,兩周後這對老鼠生出第一對小老鼠,三周後上週出生的小老鼠變成大老鼠,而原來的大老鼠又生出了一對小老鼠之後便死了,四周後,第一對出生的小老鼠 此時已經是大老鼠 又生出了一對小老鼠,此時共有三對老鼠。程式設計,計算n週後有多少對老鼠?首先...