解題邏輯:
幾頂紅帽 | 第幾天 | 說明 |
---|---|---|
1 | 1 | 戴紅帽的犯人看到其他人均戴白帽,而紅帽至少一頂,因此可以肯定自己是紅帽,所以就走了。 |
1 | 2 | 戴白帽的犯人發現唯一戴紅帽的人走了,代表他知道自己絕對不是紅帽,所以戴紅帽的人才敢走,因此第二天大家都知道自己是白的,所以所有人都走了 ( 全部出獄 )。 |
2 | 1 | 戴紅帽的兩個人眼中都有一頂紅帽,所以所有人都不敢走。 |
2 | 2 | 兩個人發現眼中的紅帽並沒有走,推論出自己戴的也是紅帽,所以他們就一起走了。 |
2 | 3 | 戴白帽的發現戴紅帽的走了,既然紅帽的敢走,自己頭上的帽子必定是白帽,所以所有人都走了 ( 全部出獄 )。 |
依此類推下去,3 頂紅帽要花 4 天,4 頂紅帽要花 5 天,但如果紅帽數和人數相當的時候,M 頂紅帽只需花 M 天就可確認。
按照解題邏輯,編輯下方的程式,當 n 等於 m 時讓 day 等於 m,如果不等於就讓 day 為 m+1。
解答:https://steam.oxxostudio.tw/category/python/zerojudge/a095.html