邏輯 500桶酒,其中1桶是毒酒,找毒酒

2021-07-27 22:13:14 字數 766 閱讀 6578

500桶酒,其中1桶是毒酒;48小時後要舉行酒會;毒酒喝下去會在之後的第23-24小時內毒死人;國王決定用囚犯來試酒,不介意囚犯死多少,只要求用最少的囚犯來測試出哪一桶是毒酒,問需要最少需要多少囚犯才能保證找出毒酒?

需要9個人

將500桶毒酒進行編號,並用二進位制表示.得到000000000~111110100.

每個囚犯對應二進位制的每一位,然後喝下對應位數為1的那個編號的毒酒

然後根據死亡的囚犯編號或者毒酒的二進位制編碼.

進而獲得毒酒的編號.

如毒酒編號為350,那麼二進位制對應為101011110.難麼囚犯234579會死亡.

需要兩個人,因為23*23=529>500

將毒酒進行編號,並且每23桶作為一組,1~23;24~46…..

囚犯一每小時喝下每一組酒

囚犯二每小時喝下每一組中對應的酒,如第一小時喝下每組的第一桶酒.第二小時喝下每一組對應的第二桶酒.

然後根據死亡時間進行交叉查詢

根據2人死亡計時和行、列交叉點即可找到那桶毒酒了。

如囚犯一34小時死亡,代表(34-23)組酒有毒,即231~253有毒.

囚犯二38小時死亡,代表每組的(38-23)號=15號有問題.

綜合後即為231+15-1=245號酒有問題.

簡單地說把500桶分成23行22列:

第乙個囚犯每小時喝一行;

第二個囚犯每小時喝一列。

根據2人死亡計時和行、列交叉點即可找到那桶毒酒了。

500桶酒中有一桶毒酒

有乙個數學題目是這樣的 500桶酒中有一桶毒酒,毒酒喝後24小時準時身亡,酒會48小時後召開,國王想用囚犯實驗出毒酒最少需要多少個囚犯?答案 1 23人,每人喝22至23種酒,24小時,毒死一人,能確定毒酒在23種以內,剩下的22人,每人喝一種,再過24小時就能找出毒酒。2 22人也行,一人喝22種...

500桶酒 其中1桶是毒酒 找毒酒

500桶酒 其中1桶是毒酒 找毒酒 500桶酒,其中1桶是毒酒 48小時後要舉行酒會 毒酒喝下去會在之後的第23 24小時內毒死人。國王決定用囚犯來試酒,不介意囚犯死多少,只要求用最少的囚犯來測試出哪一桶是毒酒,問需要最少需要多少囚犯才能保證找出毒酒?需要9個人 將500桶毒酒進行編號,並用二進位制...

桶排序及一些其應用

一年的全國高考考生人數為500 萬,分數使用標準分,最低100 最高900 沒有小數,要求對這500 萬元素的 陣列進行排序。分析 對500w 資料排序,如果基於比較的先進排序,平均比較次數為o 5000000 log5000000 1.112億。但是我們發現,這些資料都有特殊的條件 100 方法 ...