#28731: Python 解答


oxxostudio (oxxo.studio)

School : No School
ID : 173961
IP address : [220.133.228.250]
Last Login :
2022-01-11 16:45:46
a095. 麥哲倫的陰謀 -- 2011 TOI 培訓內容 | From: [122.117.124.140] | Post Date : 2021-12-29 13:36

解題邏輯:

幾頂紅帽第幾天說明
11戴紅帽的犯人看到其他人均戴白帽,而紅帽至少一頂,因此可以肯定自己是紅帽,所以就走了。
12戴白帽的犯人發現唯一戴紅帽的人走了,代表他知道自己絕對不是紅帽,所以戴紅帽的人才敢走,因此第二天大家都知道自己是白的,所以所有人都走了 ( 全部出獄 )。
21戴紅帽的兩個人眼中都有一頂紅帽,所以所有人都不敢走。
22兩個人發現眼中的紅帽並沒有走,推論出自己戴的也是紅帽,所以他們就一起走了。
23戴白帽的發現戴紅帽的走了,既然紅帽的敢走,自己頭上的帽子必定是白帽,所以所有人都走了 ( 全部出獄 )。

依此類推下去,3 頂紅帽要花 4 天,4 頂紅帽要花 5 天,但如果紅帽數和人數相當的時候,M 頂紅帽只需花 M 天就可確認。
按照解題邏輯,編輯下方的程式,當 n 等於 m 時讓 day 等於 m,如果不等於就讓 day 為 m+1。

解答:https://steam.oxxostudio.tw/category/python/zerojudge/a095.html

 
ZeroJudge Forum