強盜分金幣詳細解答

這是一道微軟的面試題目。
還是比較難的,要充分考慮后才可能得到滿意的答案。
試試看,你能想到嗎?
強盜分金幣題目:
5個強盜 (按兇狠的程度排序:A,B,C,D,E) 分100個金幣。他們設定了一個規(guī)則:從A開始分金幣的提議,然后剩下4個強盜投贊同或反對票,如果有半數(shù)或半數(shù)以上的人反對,A就被殺掉,否則就按此提議分;如果A被殺了,接著輪到B提議,然后還是按照上述辦法繼續(xù)下去。
 假設這里每一個強盜都是絕頂聰明的,而且他們的所有行為(提議與投票)都是對自己最有利的。請問這100個金幣是怎么分的?每個人各拿多少個?
[解答]1號海盜分給3號1枚金幣,4號或5號強盜2枚,自己獨得97枚。分配方案可以寫成(97,0,1,2,0)或(97,0,1,0,2)。
 推理過程是這樣的:
 逆推法:如果1--3號都被扔進了大海,只剩4號和5號的話,5號一定投反對票讓4號喂鯊魚,獨吞金幣。(因為只要5號不同意,4號提出的方案就無法過半數(shù))所以,4號只有支持3號的方案才能保命。3號知道這一點,會提出(100,0,0)的方案,對4號,5號一毛不拔而將金幣全部歸為己有,因為他知道4號雖然沒得到金幣但可以保命還是會投贊成票,在加上3號自己的一票方案就可通過。不過,2號推知3號的方案,就會提出(98,0,1,1)的方案,既放棄3號,而給4號和5號各一枚金幣。由于該方案對4號和5號來說比在3號分配時更為有利,他們將支持2號而不希望他出局由3號來分配。這樣2號將拿走98枚金幣。同樣,1號也會洞悉2號的方案而會提出(97,0,1,2,0)或(97,0,1,0,2)的分配方案,既放棄2號,給3號一枚,同時給4號(或5)號2枚。由于1號的方案對于3號和4號(或5號)來說,相比2號分配時更優(yōu),他們將投贊成票,加上1號自己的一票,1號的方案既可通過,得到97枚金幣,這是能夠?qū)崿F(xiàn)收益最大化的最佳方案了。
當然答案不止一個,還有其他答案。你想想看。
先提示一下兩外兩個答案:
A:99     B:0     C:0     D:0     E:1   
A:97     B:0     C:1     D:1     E:1 
有好的答案也可以提供一下啊。—》
attachments/200709/3758789993.gif

發(fā)表評論

(required)

This site uses Akismet to reduce spam. Learn how your comment data is processed.