先申明一下,這道邏輯題是專家Raymond Smullyan出的,自封為“世界最難邏輯題”,說除他之外無人解答出來(我納悶,我不是。。。)。
不過,最起碼說明這道題難度還是有的,誰能解答出來,誰就是“世界第一”啦,哈哈哈,YMPK。
題目是這樣的 你也來試試:
有甲、乙、丙三個精靈,其中一個只說真話,另外一個只說假話。還有一個隨机地決定何時說真話,何時說假話。你可以向這三個精靈發問三條是非題,而你的任務是從他們的答案找出誰說真話,誰說假話,誰是隨机答話。這個難題困難的地方是這些精靈會以“Da”或“Ja”回答,但你并不知道它們的意思,只知道其中一個字代表“對”,另外一個字代表“錯”。你應該問那三條問題呢?
.......如果實在想不出來想放棄......
------------------------------------
鄒祥勇521的回复:
這個問題回答起來比較麻煩。
1問:你們是說真話的精靈嗎?
答案有如下可能:兩個精靈回答Da一個回答Ja或兩個答Ja,一個答Da.則回答与另外兩個不一樣的那個精錄一定是“隨机決定何時說真話”的精靈。答案除以上兩种可能外,還有一种可能是三個回答都是一樣的,如果都是Da剛Da代表“是”,如果都是Ja則Ja代表“是”。如果回答不是相同的,則多的那個代表“是”。
通過第一步,如果直接找出了隨机決定何時說真話的精靈,則只剩兩個精靈。且此時,已經知道哪個代表是,哪個代表不是。然后問剩下的兩個精靈,你們是隨机決定何時說真話的精靈嗎?說假話的精靈會回答“是”。則只要兩個問題,就可以判斷出結果了。
如果沒能直接找出隨机說真話的精靈,即三個精靈的回答都是一樣的。則問第二個問題。
2問:你們是隨机決定何時說真的話的精靈嗎?
此時已經通過第一問知道哪個代表“是”。如果有兩個回答“是”,則回答“不是”的那個必是說真話的精靈。如果兩個回答不是,則回答“是”的那個必是說假話的。
3問要分兩种情況。如果找出的是說真話的精靈,則隨便指著一個問他,這個是不是說假話的精靈,就可以判斷出結果;如果找出的是說假話的精靈,就隨便指一個精靈,問他這個是不是說真話的精靈,然后作出相反的判斷就可以得到結果了。 |