Google、Apple、Microsoftといった世界的な超一流企業で採用試験にも出題され、「考える力」を問うテストとして注目を集める「論理的思考問題」。今、全世代に「久々に頭を使えて気持ちいい!」「親が買ったら、先に子どもが読んでいた!」と反響を呼んでいるのが、書籍『もっと頭のいい人だけが解ける論理的思考問題』(野村裕之著、ダイヤモンド社刊)です。本稿では、同書から「視点を組み合わせて考えられる人」だけが解ける傑作問題をご紹介します。
視点を組み合わせて状況を把握できるか?
様々な視点から事実を捉え、得られた情報を組み合わせることで、新たな事実が見えてくることがあります。次に示す問題は、どのように協力すれば絶体絶命の窮地を脱出できるのかを問うものです。
「100人の帽子」
悪魔にとらわれた100人が階段に一列に並べられ、全員ランダムに赤か青の帽子をかぶらされている。自分より前にいる全員の帽子の色は見えるが、自分と、自分より後ろの人の帽子の色は見えない。100人はそれぞれ1回だけ「赤」か「青」を宣言でき、自分の帽子の色を当てれば脱出できる。なお、宣言は全員が聞くことができるが、それが正解したのかどうかまではわからない。100人は帽子をかぶって並ぶ前に相談ができ、宣言する順番は自由に決められる。どのようにすれば、できるだけ多くの人が脱出できるだろうか?
100人の参加者が帽子をかぶって一列に並んでいる論理的思考問題のイラスト
一列に並んだ100人が、自分の帽子の色を当てていくという、シンプルながらも非常に絶望的な状況です。もし何の戦略もなく勘で答えるとしたら、「赤」か「青」の2択なので、正解できるのは平均して約50人程度でしょう。しかし、事前に相談ができるのですから、これよりは良い結果を出さなければなりません。
絶望的な状況からの脱出戦略
この難問に取り組む上で、まずは最も厳しい状況にある人から考えてみましょう。
受け止めるべき現実:最後尾の人の絶望
100人の中で、特に絶望的な状況にあるのは、列の最後尾にいる人です。彼からは自分より前の99人全員の帽子が見えますが、自分の帽子は誰にも見えず、自分自身も確認できません。事前に帽子の内訳を知らされているわけでもないため、最後尾の人が自分の帽子の色を知る手段は存在しないのです。彼が自分の帽子を言い当てられるかどうかは、完全に運任せ。50%の確率で正解することを祈るしかありません。これは受け止めなくてはならない現実です。
初期戦略の限界:目の前の人の帽子を答える作戦
では、最後尾の人の発言をヒントとして、他の人の正答率を上げる方法はないでしょうか?最初に思いつくのは、「目の前の人の帽子の色を答える」という方法です。これなら、99番目の人は正確な情報を得られます。しかし、これを全員で行うのは現実的ではありません。
例えば、あなたが99番目の人だと想像してみてください。最後尾の人が「赤」と答えたとしても、もしあなたの目の前の人が青い帽子をかぶっていたらどうしますか?「赤」と答えれば自分は正解できますが、98番目の人は間違えます。「青」と答えれば98番目の人は正解できますが、自分は間違えます。これは「自分を助けるか、目の前の人を助けるか」というジレンマに陥ります。
より良い戦略:平均75人を救う方法
もう少し巧妙な戦略として、例えば偶数番号の人が目の前の人の帽子の色を答え、奇数番号の人は後ろの人が教えてくれた通りに自分の帽子の色を答える、という作戦はどうでしょうか。これにより、奇数番号の50人は確実に正解できます。偶数番号の人も、目の前の人の帽子の色を答えるわけですが、それが自分の帽子の色と同じである場合もあるため、平均すると50%の確率で自分の帽子の色を当てられるでしょう。
この結果、偶数番号の50人は全員50%の確率で助かり、奇数番号の50人は全員100%助かることになります。平均すると、正解できる人数は約75人。全員が勘で答えて平均50人しか正解できないよりは格段に良い結果です。
最後尾の人以外全員が助かる「奇策」とは?
しかし、もっと良い作戦が存在します。驚くべきことに、最後尾の人以外の全員が確実に正解できる戦略があるのです。一体、どうすればそれが可能になるのでしょうか?問題文には「宣言は全員が聞くことができる」とあります。この事実を活用し、最後尾の人の宣言が、目の前にいる1人だけでなく、自分以外の99人全員にとってヒントとなるような情報を伝えられれば、正解率を劇的に上げることができます。
結論から言えば、その方法は、最後尾の人が、自分の前に見える赤い帽子の数を数え、その数が奇数か偶数かを「帽子の色」で伝えるという作戦です。詳しく見ていきましょう。
最後尾の人の「宣言」が鍵
事前の相談で、最後尾の人の発言が示す意味を次のように決めておきます。
- 赤:私より前にある赤い帽子の数は奇数である
- 青:私より前にある赤い帽子の数は偶数である
この取り決めによって、何が起こるでしょうか?
99番目の人はどう答える?
あなたが列の99番目の人で、最後尾の人が「青」と答えたとします。これは、最後尾の人から見て赤い帽子が偶数個見えたことを意味します。ここであなたは、最後尾の人と同じように、自分の前に赤い帽子がいくつあるかを数えます。
もし自分の前に、最後尾の人と同じく赤い帽子が偶数個見えたら?それは、最後尾の人がカウントした赤い帽子のなかにあなたの帽子は含まれていない、つまりあなたは「青い帽子」だとわかります。
発言が次の人へ情報を伝える
この作戦の素晴らしい点は、あなたが「青」と答えたことで、あなたの前にいる98番目の人も正解できるところにあります。
列の98番目の人は、最後尾の人と、あなたの発言を聞いて、次の事実を知ることができます。
- 1〜99番目の列の中に赤い帽子は偶数個ある(最後尾の人の宣言)
- 99番目の人は青い帽子である(あなたの宣言)
ここから、98番目の人も、自分の前に見える帽子の色を数えることで自分の帽子の色がわかります。
例えば、98番目の人の前に見える赤い帽子が「偶数個」だった場合、言い換えれば1〜97番目の列の中に赤い帽子が偶数個あったとします。
最後尾の人は1〜99番目の列の中にある赤い帽子の数が「偶数個」だと教えてくれました。そして、99番目の人の帽子は「青」でした。もし98番目の人が「赤い帽子」であったなら、赤い帽子の数は「偶数個(1〜97番目)+1個(98番目)」となり、1〜98番目の列の中には赤い帽子が「奇数個」あることになります。しかし、99番目の人が「青」だったので、これでは1〜99番目の列の中にある赤い帽子が「奇数個」になってしまい、最後尾の人の発言と矛盾してしまいます。
つまり、最後尾の人がカウントした赤い帽子のなかに、98番目の人の帽子は含まれていない、ということがわかります。したがって、98番目の人は「青い帽子」だとわかります。
98番目の人の前に赤い帽子が奇数個見えた場合も、同じ考え方で自分の帽子の色を特定できます。このようにして、99番目から1番目までの全員が、自分の帽子の色を正しく答えられるのです。
奇策がもたらす奇跡のまとめ
この画期的な戦略をまとめましょう。
まず、列の最後尾の人が、事前相談の取り決め通りに「赤」もしくは「青」と宣言することで、列全体で赤い帽子が「奇数個あるのか、偶数個あるのか」という情報を全員に伝えます。
そして最後尾より前にいる人は、「自分より前に見える赤い帽子の数」と「自分の後ろにいる、赤い帽子と答えた人の数」をもとに考えることで、自分の帽子の色を特定できます。
この作戦を使うことで、99人は確実に、そして最後尾の1人も50%の確率で自分の帽子の色を当てられます。
【正解】
最後尾の人が、1〜99人の列の中に赤い帽子が「奇数個あるのか、偶数個あるのか」を色に置き換えて全員に伝える。最後尾より前にいる人は、「自分より前に見える赤い帽子の数」と「自分の後ろにいる、赤い帽子と答えた人の数」をもとに考えて答えていけば、少なくとも99人は脱出できる。
この問題から学べること:論理と現実のギャップ
この「100人の帽子」問題は、いかにも論理的思考問題らしいスマートな解答が導き出されます。しかし、この問題をさらに深く考察すると、別の重要な知見が得られます。「論理的には正解だが、はたして現実的にも正解なのか?」という問いです。
この解決策を実行するには、最後尾の人の答えと、自分の後ろの何人が「赤」と宣言したかを全員が正確に記憶していなければなりません。そして自分の番がきたら、自分より後ろの人たちから受け取った情報と、自分の前に見える赤い帽子の数を照らし合わせ、最後尾の人の発言と矛盾しないように答えを導き出す必要があります。
現実の世界において、全員が冷静かつ完璧にこれを実行できるでしょうか。全員が論理的であるとは限らず、記憶力に自信がない人が混じっていたらどうでしょう。たった1人でもミスをすれば、システム全体が崩壊してしまう可能性を秘めています。
いくら論理的に正しい答えであっても、それが現実において実現可能かどうかは別の問題です。現実世界は、すべてが論理で動くわけではありません。現実的な解決策としてどのように落とし込むかは、実際の状況を考慮し、柔軟に考えていくしかないのです。
(本稿は、『もっと!! 頭のいい人だけが解ける論理的思考問題』から抜粋した内容です。書籍では同様の「読むほどに賢くなる問題」を多数紹介しています)




