有名な論理パズルです。
一見すると不可能のように思えますが、論理的に考えていくときちんと答えが出ます。
問題
幼女A,Bは恋人同士である。
ABは、4組の恋人たち(合計8人)を招待してパーティーを開いた。
いずれの人間も初対面の人とだけ握手をした。
その後Aは、自分以外のパーティー参加者9人(幼女B+招待客8人)に「何人と握手をしたか」と聞いた。
すると、9人全員が異なる答えを返した。
さて、幼女Bは何人と握手をしたのだろうか?
ウソをついている人はいない。
また、自分自身と握手した人はいない。
さらに、「このパーティーで自分の恋人と初めて会った」という人もいない。
さあ、解いてみよう!
え?
いや。解くの無理なのでは?
具体的なことが何も分かっていないのに、急に「Bが何人と握手したのか」とか聞かれても。
ふむ。
じっくり考えてみましょう。
ちゃんと答えは出ます。
少し下にスクロールすると答えがあります。
正解
幼女Bは4人と握手した
解説
隠れた前提
巧妙に隠されており分かりにくい部分ですが、「自分の恋人と握手をした人はいない」という部分がポイントになります。
何人と握手できるか?
パーティーに参加した恋人は5組。
AB1組と、招待客の恋人4組。
合計10人です。
どの人も、最大9人と握手することができます。
しかし問題文から「自分の恋人と握手はした人はいない」という条件が読み取れるので、実際にはどの人も最大8人までしか握手できません。
握手した人数は?
その後Aは、自分以外のパーティー参加者9人(幼女B+招待客8人)に「何人と握手をしたか」と聞いた。
すると、9人全員が異なる答えを返した。
9人の答えは全員ちがう。
最大8人とまで握手できる。
これを踏まえると、「何人と握手したか」という質問に対する9人それぞれの答えは、「0人」「1人」「2人」「3人」「4人」「5人」「6人」「7人」「8人」になるはずです。
ひとりずつ考えよう
まず「8人と握手した人」について考えてみましょう。
その人物は、自分の恋人以外の全員と握手をしたはずです。
「自分自身」「自分の恋人」と握手した人はいないので。
パーティーに参加した10人を以下のように分けて考えます。
・「8人と握手した人」
・「8人と握手した人の恋人」
・その他の8人
「8人と握手した人」は、自分の恋人以外の8人と握手をした。
つまり「8人と握手した人の恋人」以外の人たち(=その他の8人)は、少なくとも1回は握手をしているわけです。
ということは、「8人と握手した人」の恋人は「0人と握手した人」です。
この状況でのみ問題文は成立します。
同じように考えていく
つぎに「7人と握手した人」について考えます。
その人が握手した相手は
・自分自身
・自分の恋人
・「0人と握手した人」
を除く7人。
すなわちこの7人の人々は、全員すくなくとも2人––「8人と握手した人」「7人と握手した人」––と握手をしているはずです。
つまり、「1人と握手した人」はその7人以外のポジションにいるはずです。
よって「7人と握手した人」の恋人は「1人と握手した人」です。
残った1人
同様に考えていくと、「6人と握手した人」は「2人と握手した人」と恋人同士。
「5人と握手した人」は「3人と握手した人」と恋人同士になります。
さて、最後に「4人と握手した人」だけがひとり残されました。
この人はいったい誰でしょう?
「何人と握手したか」という質問に答えたのは9人。
幼女Bと、恋人4組です。
そして、すでに4組の恋人は全員出ています。
したがって「4人と握手した人」は幼女Bです。
参考
The “Impossible” Handshake Logic Puzzle. A Martin Gardner Classic
140字以内の問題文
幼女ABは恋人同士である
ABは、4組の恋人たち(計8人)を招待してパーティーを開いた
全員、初対面の人とだけ握手をした
その後Aは、自分以外のパーティー参加者9人に「何人と握手をしたか」と聞いた
すると9人全員が異なる答えを返した
さて、幼女Bは何人と握手をした?