この記事は Mathlog Advent Calendar 2023 (高校数学部門) の12月19日の記事です。
他の参加者の皆さんの記事もぜひ読んで見てください!
今回は、難しそうで簡単、面白い発想を使う問題を$2$つ紹介していきます。事前に必要な知識はありません!
ただ、自分で解を探してから回答を読む方が$10^{999}$倍楽しいので、それだけはオススメします!
それでは早速始めましょう!
ぜひ高評価もお願いします :P
(この部分は読まなくても良いですが、設定がある方が面白いかなと思いまして)
Mathlog国へようこそ!
この国では現在、最強の数学者を決める大会が開かれている。あなたを含めて、合計100人の優秀な数学好きが集まっている。この大会に優勝すると(複数人ok)あのMathlog賞が貰えます。他の皆さんは牢屋行きです!(⌒-⌒; )
この大会は二回戦形式で行われ、一回戦、二回戦共に発想力を求める問題が1問ずつ出題されます。
制限時間は30分にしましょうかね🧐 まぁご自由に決めてください。
おっと、一回戦が始まる時間のようです。では楽しんで。。。
・
・
・
$100$人の数学者達は全員$\color{red}{\text{赤}}$か$\color{blue}{\text{青}}$の帽子を被り、自分の前にいる全員の帽子が見えるよう廊下に一列に、順番は適当に並びます。一番後ろに立っている人から順に『$\color{red}{\text{赤}}$』か『$\color{blue}{\text{青}}$』と発言し、その色が自分の被っている帽子の色であればその数学者は助かり、異なれば一生牢屋行きです。(怖い!)
数学者達は事前に戦略を立てていいとします。
数学者が絶対$75$人以上残る様な戦術を見つけることができれば、あなたの勝ちです。
・
・
あなたも鉛筆を取って、一緒にどの戦略が最適かを考えてみましょう。
・
・
・
・
・
・
・
・
・
・
・
・
一回戦突破できました?
突破した方も、出来なかった方も、ぜひ解答例を見てみてください!
その前に、自然に思いつきそうな解答例を見てみましょうか。
一番後ろの人が自分の一人前の帽子の色を言う。この人は$50%$の確率で牢屋行き。
次の人は前の人が自分を犠牲にして言ってくれた色を言えば助かる。
この工程の繰り返し。
例1
また、
まず、一番後ろの人は$99$人の他の数学者達の帽子が見えているので、その中で一番多い色を言う。
次の数学者達は全員その同じ色を言う。
残念ながら、この方法だと救えても最低$50$人ですね。
他の方法が思いついていたとしても、この$50$人の壁は大きいのでは無いでしょうか。
実はこのゲーム、少なくとも$99$人が助かる方法があるんです!
:(;゙゚ω゚'):なんだと
驚きですね。一番後ろの人ができるだけ多く、大事な情報を「$\color{red}{\text{赤}}$」か「$\color{blue}{\text{青}}$」で他の数学者達に与えないといけないわけですね。
その情報とは、$\textbf{奇遇性}$です!☆
例えば、一番後ろの人が見える$\color{red}{\text{赤い}}$帽子の数が
・$\color{green}{\text{奇数}}$ならば「$\color{red}{\text{赤}}$」
・$\color{orange}{\text{偶数}}$ならば「$\color{blue}{\text{青}}$」
と言うとしましょう。
その人は$99$個の帽子が見えているので、$\color{blue}{\text{青}}$の奇遇性もすぐに求められますね。
(一番後ろの人が見えている:
$\color{red}{\text{赤い}}$帽子が$\color{green}{\text{奇数個}}$あれば$\color{blue}{\text{青い}}$帽子は$\color{orange}{\text{偶数個}}$
$\color{red}{\text{赤い}}$帽子が$\color{orange}{\text{偶数個}}$あれば$\color{blue}{\text{青い}}$帽子は$\color{green}{\text{奇数個}}$)
今回は$\color{red}{\text{赤}}$と答えたとしましょう。
$\color{red}{\text{赤い}}$帽子は$\color{green}{\text{奇数}}$個見えているわけです。
また、$\color{blue}{\text{青い}}$帽子は$\color{orange}{\text{偶数}}$個だと分かります。
言い換えると、一番目から$n-1$番目の数学者達は$\color{red}{\text{赤い}}$帽子が$\color{green}{\text{奇数}}$個、$\color{blue}{\text{青い}}$帽子が$\color{orange}{\text{偶数}}$個あると分かります。
次の数学者は前に$\color{red}{\text{赤い}}$帽子が$\color{orange}{\text{偶数}}$個しか見えない場合、自分は$\color{red}{\text{赤い}}$帽子をかぶっていると分かるのです。
また、$\color{blue}{\text{青い}}$帽子が$\color{green}{\text{奇数}}$個見える場合は$\color{blue}{\text{青い}}$帽子をかぶっていると分かります。
このさらに次の人は後ろの人が既に言った情報と前にいる人達の帽子の色を見ることで、同じように自分の帽子の色が求まります。
この工程を繰り返すと、一番最初の人以外は全員が自分のかぶっている帽子の色が当てられるわけですね。
説明が少し難しいですね、理解しやすいことを願います。。。
この問題の発展系として、色の数を増やしてみるとどうなるのか、があります。
ぜひ考えてみてください。
実は、この場合も$99$人を助けるれるんです。😱
証明の全体は述べませんが、考え方としては、色を$0,1,2,…,r-1$とし、一番後ろの人は自分の前にいる全員の帽子の色を足していき、その値を$r$で割った余りを発言します。
例えば、$r=2$だった場合(第一回戦の問題)、奇遇性とはその値が$2$で割った値が$0$なのか、$1$なのかだったわけですね。
どうでしたか?個人的にはこの問題、めちゃくちゃ面白いと思います。
この様に、二回戦も発想に重点を置いた問題が出されます!
一回戦突破した方、ぜひ優勝目指して頑張ってください!
また、突破できなかった方も、この「大会」という設定は無視して 牢屋の中 で問題に挑んでください!
TOMATOさんは正の整数を$100$個選び、それぞれを$x_1, x_2, …, x_{100}$としました。それら全ての値を見つけるために、あなたはいずれの$x_i$、足し算、引き算を使ってどんな質問をしてもいい。(例:$6x_1 - 13x_2$)。
$\kappa$はあなたにその式に正確な値で答える。あなたの質問は前の質問の回答によって変わっても良いものとする。
$10$回以上質問をしたら$\kappa$の勝ち、$10$回未満で全ての数字を見つけることができたらあなたの勝ちです。
(追記:$x_1$を$x_2$回たす、として$x_1x_2$などを作り出してはいけません。詳細はコメントで。)
・
・
・
あなたもどの戦略が最適かを考えてみましょう。
・
・
・
・
・
・
・
・
・
・
・
・
第一回戦と同様、この第二回戦も驚くべきほど少ない質問の数で全$x_i$が見つかってしまいます。
その解を導くために、まず、問題をもう少し簡単にしてみましょう。
$x_i$たちを正の整数ではなく、一桁の数字$\{0,1, 2, 3, 4, 5, 6, 7, 8, 9\}$に絞ってみましょう。
(このように、ある問題に対面するときは、小さな値で考えてみると嬉しい事があるかも。。)
・
・
考えてみてください。
・
・
この場合だと、質問$1$つで全数字を求められちゃいます!
答えは
$$x_1 + 10x_2+10^2x_3 + … + 10^{n—1}x_n$$です!
この式の答えに$213$と帰ってきたら、
$$\left\{\begin{eqnarray}
x_1 & = & 3 \\
x_2 & = & 1 \\
x_3 & = & 2
\end{eqnarray}\right.$$
と簡単に見つけられちゃいます!
次に、$x_i$は定数$k$未満の正の整数だとしましょう。
・
・
・
考えてみてください。この場合でも質問$1$つでいけちゃいます!
・
・
・
正解は、$k<10^l$となるような$l$を取り、
$$x_1 + 10^lx_2+10^{2l}x_3 + … + 10^{l(n-1)}x_n$$です!
びっくりでしょう!
すると、第二回戦は、
・質問[1]: $x_1+x_2+…+x_n$
・質問[1]を定数$k$として$k<10^l$となる$l$を定める。
・質問[2]:$x_1 + 10^lx_2+10^{2l}x_3 + … + 10^{l(n-1)}x_n$
以上で全数字を求められましたね!それもたった$2$つ質問で。
この問題の発展系として、掛け算も使っていい場合はどうなるか。また$x_i$は負の数になっても良い場合はどうなるか。ぜひ考えてみてください。
僕の情報先によると、この二つの問題はそれぞれ$1$回、$100$回(つまり近道は無い。。。)質問をすることで全$x_i$が求まるそうです。
しかし、その全体を記すにはこの余白が小さすぎますね😜。また次の機会で。
(僕も考えてみたのですが、なかなか証明ができません。分かる方、ぜひ教えてください!(汗))
(追記:$x_1$を$x_2$回かける、として$x_1^{x_2}$などを作り出してはいけません。
累乗の値は自分が既に知っている(正の)整数でなければいけません($2、3、983$など)詳細はコメントで。)
いかがでしたか?
この問題達は僕が数学オリンピックの勉強中に出会った、発想がものすごく大事な問題ニ選でした。この様な問題はぜひ自分で作問してみたり、もっと出会ってみたりしたいです。。。
皆さんはMathlog賞、貰えましたか?
僕はちなみにシンプルに無理した。。。
この様な事前知識よりも発想がものを言う問題達は本当によく出来ていますよね。。。
どう思いつくんだか🧐
解説が数学オリンピック好きにとっては物足りない部分もあったかもしれません。できるだけ多くの人たちに理解してもらえる様に努力したつもりです。
多くの人に楽しんでもらえたら嬉しいです。
今回が僕の初記事なので何か足りない部分が多いかもしれません。解説のアドバイス、または間違いがある場合はコメントなどでご指摘お願いします!
また、別の解を見つけた方にもぜひコメントして欲しいです!
ご協力お願いします、
お疲れ様でした!
Yukidarumaでした!