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

葯劑演算法

發布時間: 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 個瓶子中檢驗出毒葯來。

熱點內容
c語言紫皮 發布:2025-04-03 14:38:22 瀏覽:853
華為路由存儲 發布:2025-04-03 14:36:55 瀏覽:202
虛擬伺服器地址 發布:2025-04-03 14:36:53 瀏覽:615
家用垃圾壓縮機 發布:2025-04-03 14:36:52 瀏覽:413
計算存儲解耦 發布:2025-04-03 14:28:17 瀏覽:274
編譯器能夠識別的語義 發布:2025-04-03 14:23:43 瀏覽:367
中文雲伺服器 發布:2025-04-03 14:22:02 瀏覽:926
平台緩存占內存嗎 發布:2025-04-03 14:07:28 瀏覽:112
蘋果手機的id和密碼有什麼作用 發布:2025-04-03 14:00:12 瀏覽:211
方舟生存進化電腦版伺服器 發布:2025-04-03 13:59:21 瀏覽:897