クイズ:嘘つき村と正直村
ある島には、次の2種類の住人がいます。
- 正直者(いつも本当のことを言う)
- 嘘つき(いつも嘘しか言わない)
あなたはこの島を探検しており、3人の住人A、B、Cに出会いました。あなたは彼らに次の1つの質問をしました:
「あなたの隣の人は正直者ですか?」
すると、次の答えが返ってきました:
- A:「Bは正直者です」
- B:「Cは嘘つきです」
- C:「Aは正直者です」
条件:
- 住人たちは円形に座っているので、Aの隣はBとC。
- 嘘つきは常に嘘をつき、正直者は常に本当のことを言います。
- 正直者と嘘つきは最低でも1人ずつ含まれています。
問題:
A、B、Cのうち、誰が正直者で誰が嘘つきかを特定してください。
解答
先ほどよりは厄介だけど、私には簡単だ
まず、それぞれの発言が意味する可能性を整理する:
- A「Bは正直者です」
⇒ Aが正直者ならBは正直者、Aが嘘つきならBは嘘つき - B「Cは嘘つきです」
⇒ Bが正直者ならCは嘘つき、Bが嘘つきならCは正直者 - C「Aは正直者です」
⇒ Cが正直者ならAは正直者、Cが嘘つきならAは嘘つき
では、仮定を立てて考える。
① Aが正直者だと仮定すると:
A ⇒ Bは正直者
B ⇒ Cは嘘つき
C ⇒ Aは正直者(正しい)
→ Cは嘘つきのはずなのに「Aは正直者」と発言=正しいことを言っている → 矛盾!
② Aが嘘つきだと仮定すると:
A ⇒ Bは嘘つき
B ⇒ Cは正直者
C ⇒ Aは正直者(嘘つきのCが本当のことを言っている)→ また矛盾!
結論:
どの仮定でも矛盾が生じるため、この条件では3人の真偽を矛盾なく決めることはできません。
つまり、解なし。