論理クイズ「幼女と40人の村人」でトリッキーな答えに迫れるか

問題

幼女が訪れたある村には、子供が20人、大人が20人いる。

1番目の子供が「大人のうち少なくとも1人は嘘つきである」と言った。
2番目の子供が「大人のうち少なくとも2人は嘘つきである」と言った。
3番目の子供が「大人のうち少なくとも3人は嘘つきである」と言った。
4番目の子供が「大人のうち少なくとも4人は嘘つきである」と言った。
5番目の子供が「大人のうち少なくとも5人は嘘つきである」と言った。

(中略)

19番目の子供が「大人のうち少なくとも19人は嘘つきである」と言った。
最後の子供が「大人は20人全員が嘘つきである」と言った。

嘘つきはいつも嘘をつき、正直者はいつも真実を言う。

さて、この村に正直者は何人いるだろうか?

なおこの村にいる人間は「嘘つき」か「正直者」のどちらかである。
また、幼女は村の人数にカウントされない。

さあ、解いてみよう!

ヒントは特にありません。

なかなか特徴的な解答になります。

「問題文で聞かれていることは何なのか」に注意してください。

以下、少し下にスクロールすると答えがあります。

 

 

 

 

 

正解

正直者は20人

解説

特定の場合で考えてみる

かりに、大人のうち3人が嘘つきだったとします。

この場合、「大人のうち少なくとも3人は嘘つきである」と言った3番目までの子供は正直者になります。
そして「大人のうち少なくとも4人は嘘つきである」と言った4番目の子供以降の子供はすべて嘘つきになります。

大人は3人が嘘つき。
子供は4〜20番目の17人が嘘つき。

嘘つきの人数は 3 + 17 = 20人。

村人は全員で40人なので、20人が正直者ということになります。

一般化した場合を考えてみる

さて、これと同じことが他の場合でも当てはまります。

大人のうちn人が嘘つきだとすると、子供は(n+1)番目から20番目の子供がまでが嘘つき––すなわち(20-n)人の子供が嘘つき––になります。

ということは、全体的な嘘つきの人数はいつも大人n人、子供(20-n)人。

n + (20-n) = 20

すなわち、村全体で考えるとn(嘘つきの大人は何人いるか)に関わらず、嘘つきは必ず20人いることになります。

40人の村なので、嘘つきが20人なら正直者も20人。

この内訳は、常に変わることがありません。

問題文で問われているのは「村の中の正直者の人数」なので、どんな場合でも常に「20人」が答えです。

まとめ

「大人のうち何人が嘘つきなのか」という事実は不確定なのに、「嘘つき」と「正直者」の比率は常に変わることがないため答えが出てしまう。

かなりトリッキーで面白い問題ですね。

参考

東京農工大学情報工学専攻/情報工学科

本論理クイズは上記サイトより問題の要旨を引用いたしました。

140字以内の問題文

大人と子供が20人ずつの村がある
子供1「大人のうち少なくとも1人は嘘つき」
子供2「大人のうち少なくとも2人は嘘つき」
(中略)
子供20「大人は全員嘘つき」
さて、この村に正直者は何人いる?
※村の人間は嘘つきか正直者のいずれかで、嘘つきは常に嘘をつき正直者は常に真実を言う