設萬維讀者為首頁 廣告服務 聯繫我們 關於萬維
簡體 繁體 手機版
首頁 新聞 視頻 博客 論壇 分類廣告 購物
版主:阿飛的劍
萬維讀者網 > 茗香茶語 > 帖子
定理:囚徒放風問題的正解
送交者: 定理 2009年12月10日22:11:32 於 [茗香茶語] 發送悄悄話


有100個無期徒刑囚徒,被關在100個獨立的小房間,互相無法通信。每天會有一個囚徒被隨機地抽出來放風,隨機就是說可能被抽到多次。放風的地方有一盞燈,囚徒可以打開或者關上,除囚徒外,沒有別人會去動這個燈。每個人除非出來防風,是看不到這個燈的。


一天,全體囚徒大會,國王大赦,給大家一個機會:如果某一天,某個囚徒能夠明確表示,所有的囚徒都已經被放過風了,而且的確如此,那麼所有囚徒釋放;如果仍有囚徒未被放過風,那麼所有的囚徒一起處死!


囚徒大會後給大家20分鐘時間討論, 如果你是其中的一員,應怎樣利用這20分鐘的時間來制定一個切實可行的辦法呢?


如果說是某一個囚犯一直無法抽到出去放風,那他們就確實無法出去了。不需要考慮這樣的可能哦。


這題確實比較難。補充一下:不要去考慮什麼犯人突然死亡的意外因素。是純粹的理論題。


---------


這問題有趣之處:一、它的燈只能提供或開或關兩個可能的信號,二、任何解法都不能容許犯錯的可能(出錯則被殺,被殺的得益=負無窮)。只要抽掉其中一點,這問題就沒勁了。


之所以有點難,是因為一般人不習慣從別人的所知或未知來作推理。


我的解法:


假定燈的初始態是關。

囚徒開會時約定:

1。每人 在第一次輪到自己放風時,改變燈的狀態(進去時,燈若開則關,燈若關則開);

2。每人 在第2次第3次...第N次輪到自己放風時,都 不 改變燈的狀態。


這就行了!


為甚麼?


舉個最簡單的例子:總共只有三個囚犯。想像如下情形:已有兩個不同的囚犯放過了風,第三個(原來沒放過風的)囚犯也抽中去放風。他進去時,燈的狀態必然是‘關’。因為他自知他不是第一個輪到放風的,所以他知道這燈狀態已被動過,而它現在回到了初始態‘關’,證明先他而來的是兩個不同的囚犯,於是他推知 連他在內,所有三人都放過風了。


每過3天(4天或一周皆可),以上情形出現的概率 大於零。於是以上情形出現的概率 隨着日久天長和各囚徒的萬壽無疆,無窮逼近百分之百。老幫菜們耳熟能詳的‘英特納雄耐耳,就一定要實現’,大概就是這個意思吧。


當囚犯總數大於3時,解法也一樣,只是要等長點時間。宣告‘所有的囚徒都已經被放過風了’的重擔,落在第三個放風者 和 任何後來的進去看見燈是關着的放風者 身上。每個這樣的囚徒都記着自己 ‘不連續地 放風 並且 看見‘燈關’’ 的次數,只要這次數達到N-2,那麼他就能宣告:已有至少N個不同的囚犯放過風了。

0%(0)
標 題 (必選項):
內 容 (選填項):
實用資訊
回國機票$360起 | 商務艙省$200 | 全球最佳航空公司出爐:海航獲五星
海外華人福利!在線看陳建斌《三叉戟》熱血歸回 豪情築夢 高清免費看 無地區限制