當前位置:首頁 » 操作系統 » 葯劑演算法

葯劑演算法

發布時間: 2025-01-03 11:14:15

① 邏輯演算法題(不斷更新)

問:有1000瓶葯劑和10隻老鼠,葯劑中有1瓶毒葯,喝了一周內死亡(有的題目改成了五分鍾,五分鍾真虧他能喂完),如何在仿早一周內找到這瓶毒葯。
答:將這1000瓶葯劑編號0~999,並轉換為二進制 就是0000000001~1111101000,從右向左開始,讓第一隻老鼠喝所有右起第一位編號為1的葯劑,第二隻老鼠喝所有右起第二位編號為1的葯劑,依次類推,10隻老鼠喝完10位的葯劑,一周後,如果第一隻老鼠死亡,那麼毒葯的從右起第一位為1,未死亡的話就為0,所以根據死亡狀態就可以知道該瓶毒葯的二進制。
例如狀態是:死亡,存活,死亡,存活,存活,存活,死亡,存活,死亡,存活 = 010111010=186
從上面例銀瞎子就可以知道第二種和第三種問題的解法了吧

測試時間提升為兩周就說明第一周測試不死的老鼠可以拿來繼續第二周的測試 ,所以老鼠的狀態就變成了三種:存活(未實驗),死亡,實驗後存活。
將全部葯劑編號後轉為三進制數,老鼠右起依次喝0編號的葯劑,如果死亡,那麼該位編號為0,鋒大空如果未死亡,那麼可能為1和2,第二周把存活的老鼠繼續喝該位1編號的葯劑,如果死亡就為1,存活就為2,這樣就找到了毒葯的三進制編號,然後轉換成下標即可。

總結:有 n 只小白鼠 m周的時間可以從 (m+1)^n 個瓶子中檢驗出毒葯來。

熱點內容
java漢諾塔遞歸演算法 發布:2025-04-02 06:28:40 瀏覽:126
可執行文件是編譯鏈接後生成的文 發布:2025-04-02 04:36:44 瀏覽:174
電腦文件加密軟體免費 發布:2025-04-02 03:02:51 瀏覽:806
php圖片管理 發布:2025-04-02 03:01:11 瀏覽:266
然後弄編程 發布:2025-04-02 02:54:06 瀏覽:114
解壓室俱樂部 發布:2025-04-02 02:47:04 瀏覽:282
安卓哪裡下載文豪野犬 發布:2025-04-02 02:45:04 瀏覽:790
優酷安卓怎麼免廣告 發布:2025-04-02 02:30:07 瀏覽:834
安卓系統怎麼把繁體字改為簡體字 發布:2025-04-02 02:14:39 瀏覽:326
androidpos機 發布:2025-04-02 01:40:54 瀏覽:374