三個神仙
話說有一天你不幸漂流到一個島上。這島上沒有水,沒有食物。你在島上走啊走啊,突然看到一塊石碑。石碑的正面寫著奇怪的看不懂的文字,後面的文字是英文。還好你平常翹課不多,可以看懂。翻譯過來是這樣子的:
********************************************************
如果你看到了這個碑文,那你就是天底下最不幸的人了。因為你現在到了整個世界最為悲慘的一個島上。正如你看到的,這個島上沒有食物,沒有水,甚至沒有任何生物。除了石頭還是石頭。
不過你若是和我一樣是聰明絕頂的人的話,或許你有辦法離開這個島。你注意看這個石碑後面,有一盞燈。你一定看過阿拉丁的故事。對了,那是盞神燈。好了,也許你現在興奮起來了,但不要高興的太早。並不是每個撿到燈的人都像阿拉丁一樣幸運。你先不要急著去打開那個燈,且聽我把話說完。
當你打開那個燈,會出現三個神仙,其中一個叫騎士(Knight),因為它永遠不會說謊;第二個叫惡棍(knave),因為它從不說真話。
剩下的叫兩面人(Knexus),若你問兩面人一個問題:
兩面人會先在心中假想你問的人是騎士而不是問它,這樣的話騎士會依據你的問題給你一個答案。
然後兩面人會再假想你問的人是惡棍而不是問它, 這樣的話惡棍會依據你的問題給你另一個答案。
這兩個答案若是相同,两面人就會回答你"否";這兩個答案若是不同,两面人就會回答你"是";
對了,這三個神仙只會說“是”或者“否”。(yes or no.)
你若故意去問它們那些不能用“是”或者“否”來回答的問題,它們會當作有人放屁,然後就通通躲回燈裡再也不出來了。
相信你一定對兩面人的思路有疑問吧!讓我來用數學符號 XOR 說明,比如說針對某一個問題:
若騎士會回答“是”,而且惡棍會回答“是”;則兩面人的回答就是“否”。( 是 XOR 是 = 否 )
若騎士會回答“是”,而且惡棍會回答“否”;則兩面人的回答就是“是”。( 是 XOR 否 = 是 )
若騎士會回答“否”,而且惡棍會回答“是”;則兩面人的回答就是“是”。( 否 XOR 是 = 是 )
若騎士會回答“否”,而且惡棍會回答“否”;則兩面人的回答就是“否”。( 否 XOR 否 = 否 )
總之,騎士與惡棍的答案若是相同,那兩面人就答“否”,騎士與惡棍的答案若是不同,那兩面人就答“是”。
舉例A:
如果你問兩面人說:“請問 asmobia 是智障嗎?” --- asmobia 是智障,這是事實 ---
針對“請問 asmobia 是智障嗎?”這個問題:
騎士會可惡地回答:“是”,
惡棍會貼心地回答:“否”
所以兩面人的回答:是 XOR 否 => “是”
舉例B:
如果你問兩面人說:“請問你是騎士嗎?”
針對“請問你是騎士嗎?”這個問題:
騎士會回答:“是”,
惡棍會回答:“是”
所以兩面人的回答:是 XOR 是 => “否”
我當時問了三個問題,就問出了誰是誰。只有把三個神仙都分辨了出來,它們才讓你許願,這樣才能離開這個島。你若有興趣,也可以問一些問題,不過千萬不要問超過三個問題,不然這些神仙就會通通回到燈裡,再也不出來了。你也就永遠回不去了。你問的時候,一定要用你的一根手指頭,指著你要問的那一個神仙,不然它們三個會一起回答,你就等於問了三個問題了。當然你可以問同一個神仙多個問題。
最後說一下,它們的語言真是難懂。還好說“是”是一種發音,說“否”又是另一種發音,很好分辨的。真不明白它們既然能聽懂我說的英文為什麼不乾脆用英文回答我呢?鬱悶啊!
最後提醒一下,千萬不要問關於“兩面人會不會怎麼樣怎麼樣回答”這種問題,因為這樣的問題會產生無窮循環,造成那個神仙的記憶體出錯,然後它會狂性大發將你凌遲折磨至死。
祝你好運。
******************** asmobia ************************
你看到的這個碑文,非常高興,覺得終於有方法離開這個該死的島了。你在石碑旁邊找到了那個燈,一打開蓋子,真的冒出三個神仙出來。一個胖胖的,一個瘦瘦的,還有一個長猥猥瑣瑣像個日本怪叔叔。你正準備問問題,突然發現你根本不知道哪個是騎士,哪個是惡棍,哪個是兩面人;更糟糕的是,你甚至不知道神仙的“是”和“否”的發音是什麼樣的。
為了離開這個島,你必須先分辨出這三個神仙誰是誰,這樣它們才讓你許願。那麼你將怎樣來問三個問題,來分辨出這三個神仙呢?