微軟面試題 五個海盜分100個寶石(博弈)

2021-05-04 03:48:48 字數 1612 閱讀 2976

此題的標準答案是:

1號海盜分給3號1顆寶石,4號或5號2顆寶石,自己則獨得97顆寶石,即分配方案為(97,0,1,2,0)或(97,0,1,0,2)。

現來看看我的分析:

首先從5號海盜開始,因為他是最安全的,沒有被扔下大海的風險,因此他的策略也最為簡單,即最好前面的人全都死光光,那麼他就可以獨得這100顆寶石了。

接下來看4號,他的生存機會完全取決於前面還有人存活著,因為如果1號到3號的海盜全都喂了鯊魚,那麼在只剩4號與5號的情況下,不管4號提出怎樣的分配方案,5號一定都會投反對票來讓4號去喂鯊魚,以獨吞全部的寶石。哪怕4號為了保命而討好5號,提出(0,100)這樣的方案讓5號獨佔寶石,但是5號還有可能覺得留著4號有危險,而投票反對以讓其喂鯊魚。因此理性的4號是不應該冒這樣的風險,把存活的希望寄託在5號的隨機選擇上的,他惟有支援3號才能絕對保證自身的性命。

再來看3號,他經過上述的邏輯推理之後,就會提出(100,0,0)這樣的分配方案,因為他知道4號哪怕一無所獲,也還是會無條件的支援他而投贊成票的,那麼再加上自己的1票就可以使他穩獲這100寶石了。

但是,2號也經過推理得知了3號的分配方案,那麼他就會提出(98,0,1,1)的方案。因為這個方案相對於3號的分配方案,4號和5號至少可以獲得1顆寶石,理性的4號和5號自然會覺得此方案對他們來說更有利而支援2號,不希望2號出局而由3號來進行分配。這樣,2號就可以屁顛屁顛的拿走98顆寶石了。

不幸的是,1號海盜更不是省油的燈,經過一番推理之後也洞悉了2號的分配方案。他將採取的策略是放棄2號,而給3號1顆寶石,同時給4號或5號2顆寶石,即提出(97,0,1,2,0)或(97,0,1,0,2)的分配方案。由於1號的分配方案對於3號與4號或5號來說,相比2號的方案可以獲得更多的利益,那麼他們將會投票支援1號,再加上1號自身的1票,97顆寶石就可輕鬆落入1號的腰包了。

顯然,海盜分寶石的模型相對於現實來說,實在是太粗糙了,現實中的情況遠要比它複雜千萬倍。

首先,現實中肯定不可能人人都絕頂聰明並富有理性,海盜中只要3號、4號或5號中任何一人偏離此假設,1號就極有可能被拋入大海。因此,現實中的1號必須首先考慮他的兄弟們是否足夠的聰明與理性,而斷然不能顧自取走那97顆寶石。

其次,在這一涉及個人重大利益的分配過程中,陰謀會像雜草一般瘋長,而謊言與虛假承諾也就有了用武之地。假如,2號事先對3、4、5號海盜大放煙霧彈,稱基於1號所提出的任何分配方案,他都會再多加1顆寶石給他們,那結果可能又會是另一番景象了。

再次,所有規則的設立,說到底,都遵循一條根本規則:暴力最強者說了算。這是一條元規則,決定規則的規則。在發生爭執時,如果在肉體上消滅對方是最合算的,付出成本也是最低的話,那麼當5個海盜中最強悍的那個將刀架在其餘海盜脖子上,並大喝道「要命還是要寶石」的時候,那麼任何的爭執都不難解決,任何的意見也就不難統一了。

當然,即使1號是那最強悍的海盜,其餘4人也還是有可能組成乙個反1號大聯盟,並經過精心策劃和充分準備而起來「造反」,合力將1號**並扔進大海,再由這4人重新商定分配規則。

已經無需討論更多的情況,相信大家已同意現實實在是太複雜的看法了。但是,海盜分寶石的模型還是不乏有啟示意義,即任何「分配者」想讓自己的方案獲得通過,其關鍵是在於事先要考慮清楚「挑戰者」所可能會提出的分配方案,然後盡力拉攏「挑戰者」分配方案中最不得意的人,用最小的代價使自己的利益最大化,總之是離不開過人的智慧型和高超的策略。

5個海盜分100金幣

五位絕頂聰明 勇敢 理智 果斷幹練的女海盜搶得100枚金幣後,討論如何進行公正分配。他們商定的分配原則是 超過半數的人同意時 才會按照他的提案進行分配,否則也將被扔入大海 4 依此類推。這裡假設每乙個女海盜都是絕頂聰明而理性,他們都能夠進行嚴密的邏輯推理,並能很理智的判斷自身的得失,即能夠在保住性命...

12個球問題 微軟面試題

現有12個球,其中有乙個是次品,但不知道它比正常的重還是輕,現在只有天平一架,請稱3次找出次品球。首先,把12個小球分成三等份,每份四隻。拿出其中兩份放到天平兩側稱 第一次 情況一 天平是平衡的。那麼那八個拿上去稱的小球都是正常的,特殊的在四個裡面。把剩下四個小球拿出三個放到一邊,另一邊放三個正常的...

微軟面試題系列(五) 查詢最小的 k 個元素

好了,斷續微軟面試題的學習!看到題目,我首先想到的是樹狀陣列,後來看ppt才發現用樹狀陣列可以實現查詢第k大的元素,細想一下和這道題也差不多。網上的很多實現都是用堆做的,用堆大多數也是用c 的stl,multiset來實現。網上 很多,而且我也沒弄明白這題,先就不自己寫 了。在這裡,給出乙個o n ...