司志本+張琪
“帽子問題”是大家比較熟悉的一道思維訓(xùn)練題.如果你閱讀一些有關(guān)博弈論的書籍,那么你就會發(fā)現(xiàn),博弈論中一些比較經(jīng)典的問題與“帽子問題”是非常相似的,我們可以把這些問題視為“帽子問題”的衍生問題.經(jīng)常思考一些這樣的問題,對于訓(xùn)練我們的思維是十分有益的.
例1 帽子問題.
這是一個游戲,A、B、C三個人圍坐在一起,主持人備有3頂紅帽子和2頂白帽子.將其中的3頂帽子分別戴在這三個人的頭上.每個人都能看見其他兩個人頭上的帽子,但看不見自己頭上戴的帽子,并且也不知道剩余的2頂帽子的顏色.
主持人首先問A: “你戴的是什么顏色的帽子?” A回答說:“不知道.” 接著,主持人又問B同樣的問題,B想了想之后,也回答說:“不知道.”主持人最后問C,C回答說:“在聽了A、B的回答之后,我知道我戴的帽子是什么顏色了.” 請問C戴的是什么顏色的帽子?
分析 首先,不可能有兩個人同時戴白帽子.例如,假設(shè)A 、B戴的都是白帽子,那么C不需要聽取A、B的答案,就能夠判斷出自己戴的是紅帽子;其次,不可能只有一個人戴白帽子.事實上,假如A戴的是白帽子,那么對于C來說,他看到的情況是:A戴白帽子,B戴紅帽子,因為不可能有2人都戴白帽子,所以,C由此可以判斷,自己戴的一定是紅帽子.
上述的“帽子問題”也經(jīng)常以下面的形式出現(xiàn):
C、B、A三個人從前到后站成一列,主持人備有3頂紅帽子,2頂白帽子,將其中的3頂帽子分別戴在這三個人的頭上,他們都只能看見站在自己前面那些人的帽子.主持人首先問排在最后面的A: “你戴的是什么顏色的帽子?”A回答說:“不知道.” 接著,主持人又問B同樣的問題,B也回答說:“不知道.”主持人最后問C. C回答說:“在聽了A、B的回答之后,我知道我戴的帽子是什么顏色了.” 請問C戴的是什么顏色的帽子?
分析 站在最后邊的A不知道自己所戴帽子的顏色,說明他前面的B和C所戴的帽子不都是白色的,否則,A就能夠判斷出自己戴的是紅帽子了;此時,如果排在第一位的C戴的是白帽子,那么排在第二位的B根據(jù)A的回答,就可以判斷自己戴的不是白帽子,而是紅帽子;現(xiàn)在B也不知道自己帽子的顏色,這就說明C戴的不是白帽子.所以,C戴的帽子一定是紅色的.
“帽子問題”中的人數(shù)還可以增加.例如4個人的情況就是下面的問題:
有A、B、C、D四個人圍坐在一起,主持人準備了4頂紅帽子,3頂白帽子.將其中的4頂帽子分別給這四個人戴在頭上.他們每個人都能看到別人的帽子,但看不到自己頭上帽子的顏色.主持人對他們四個人說:“你們中間至少一個人戴的是紅色帽子,你們知道自己頭上帽子的顏色嗎?”四個人都說不知道.主持人連續(xù)問了三次同樣的問題,他們都說不知道.當主持人問到第四遍時,四個人同時回答說:知道了.請問,這四個人所戴帽子是什么顏色的?
分析 如果A、B、C、D這四個人中只有一個人的帽子是紅色的,不妨假設(shè)A的帽子是紅色的,那么A看見另外三個人的帽子都是白色的,此時,主持人第一次提問時,A就能判斷出自己的帽子是紅色的.主持人第一次提問時,四個人都回答說不知道自己帽子的顏色,這說明不止A一個人的帽子是紅色的;如果只有兩個人的帽子是紅色的,不妨假設(shè)A和B的帽子是紅色的,那么A和B兩個人會看見一個人戴紅帽子,兩個人戴白帽子,進而判斷出自己戴的是紅帽子,在主持人第二次提問時,A和B就會給出答案.因此不可能只有兩人戴紅帽子;如果只有三個人的帽子是紅色的,不妨假設(shè)A、B、C的帽子是紅色的,那么A、B、C中任意兩個人會看見兩個人戴紅帽子,一個人戴白帽子,由前面分析可知,不可能只有一個或兩個人戴紅帽子,所以,A、B、C可以判斷出自己戴的是紅帽子.主持人前三次提問時,四個人都說不知道.到這時,這四個人已經(jīng)判斷出他們的帽子都是紅色的了,所以,當主持人第四次提問時,四個人同時回答說:知道了.他們四個人所戴的帽子都是紅色的.
例2 臟臉問題.
“臟臉問題”是許多博弈論書上都提到的一個問題,最簡單的情況是這樣的:
一個房間里有三個人,三個人的臉都是臟的,他們都知道別人的臉是臟的,卻不知道自己的臉是臟的.這時主持人走進來對他們說:“你們中間至少有一個人的臉是臟的.”這三個人聽完之后,互相看看,沒有任何反應(yīng);主持人見他們這樣,又繼續(xù)提醒道:“你們知道嗎?”這時三個人又相互打量起來;當主持人第三次提醒時,他們突然都意識到自己的臉是臟的.三個人的臉一下子都紅了.
分析 如果三個人中只有一個人是臟臉,那么臟臉人看見另外兩個人的臉都是干凈的,此時,主持人第一次提醒時,臟臉人就會意識到自己的臉是臟的,他就會感到臉紅.主持人第一次提醒后,三個人誰都沒有臉紅,這說明,不止一個人臉臟;如果只有兩個人臉臟,那么臟臉的兩個人會看見一張干凈臉和一張臟臉,進而意識到自己的臉是臟的,當主持人第二次提醒時,這兩個人就會臉紅.因為主持人第二次提醒時,沒有人臉紅,這說明不只兩個人的臉臟,所以,當主持人第三次提醒時,三個人的臉都紅了.三個人的臉都是臟的.
例3 病狗問題.
大家都知道微軟公司的面試是與眾不同的,他們面試題大體上可以分為四類:第一類,快速估算題,測試你的快速反應(yīng)能力;第二類,開放性思維題,考驗?zāi)愕倪壿嬐评砟芰?;第三類,基礎(chǔ)數(shù)學(xué)題,考核你的數(shù)學(xué)基礎(chǔ)是否扎實;第四類,智力測試題,看你能否創(chuàng)造性地思考.下面的“病狗問題”就是微軟公司的一道招聘試題:
一個大院子里住了50戶人家,每家都養(yǎng)了一條狗,有一天他們接到通知說院子里有狗生病了,并要求所有主人在發(fā)現(xiàn)自己家狗生病的當天就要把狗槍殺掉.然而所有主人和他們的狗都不能夠離開自己的房子,主人與主人之間也不能通過任何方式進行溝通,他們能做的只是通過窗戶觀察別人家的狗是否生病,從而判斷自己的狗是否有病.第一天沒有槍聲,第二天還是沒有槍聲,第三天傳出一陣槍聲.問有多少條病狗被槍殺.
分析 如果只有1條狗是病狗,那么第一天這條病狗的主人發(fā)現(xiàn)另外的49條狗都是正常的,從而判斷自己的狗是病狗.因此,第一天主人就應(yīng)該把自己的狗給殺死.第一天沒有槍聲,說明至少有2條病狗.
如果只有2條病狗,那么第二天這2條病狗的主人只能看到1條病狗和48條沒病的狗.因為病狗多于1條,所以,2條病狗的主人可以判斷自己的狗是病狗,第二天應(yīng)該把自己的狗給殺死.第二天沒有槍聲,說明至少有3條病狗.
如果有4條或4條以上的病狗,那么每個主人至少能夠看到3條病狗.由于病狗的數(shù)量是不是3條無法確定,每個人也無法判定自己的狗是不是病狗,所以第三天就不會有槍聲.
第三天傳出槍聲,說明只有3條病狗.