解けたら天才。
正答率0.01%(推定)の最難関数学パズル。
簡単そうな問題文の向こうには、極悪難易度の試練が待ち受けています。
問題
ある日、午前中に雪が降り始めた。
雪はつねに一定のペースで降る。
除雪車が正午(AM12時)ぴったりに動き出し、1時間で2マイルの除雪を完了し、さらに1時間で1マイルの除雪を完了した。
雪はいつ降り始めた?
さあ、解いてみよう!
超難問です。
きわめてシンプルな問題文ですが、解決の糸口はもちろんヒントのカケラすら見えないこと必至。
かなり多くの人が問題を解く前に文章を二度見して「何をどう考えても解答不可能である」と結論づけてしまう歴史的難題です。
文中に一切の誤植はありません。
必ず解けます。
高校数学までの知識で解けるものとしては世界最高クラスの難易度であると、個人的には思っております。
解けたら天才。
あるいは、数学者。
海外では「Snow Plow Problem」(除雪車の問題)として知られる有名な数学問題にチャレンジしてみましょう。
ヒントはなし。
少し下にスクロールすると答えがあります。
正解
AM11:23
解説
必要なもの
本問では微積分を使います。
はい。
高校のころ誰もが一度は思ったはずです。
「微分積分とか現実でいつ使うんだよ…」
お待たせしました。
今日です。
計算方法や「そもそも微分積分って何だ」みたいな話は置いておいて、今回知っておいていただきたいのは以下の2点。
- 位置を微分すると速度になる
- 積分は微分の逆演算
はい。
細かいことは結城浩先生の
『数学ガールの秘密ノート/微分を追いかけて』
『数学ガールの秘密ノート/積分を見つめて』
っていう本を読んでください。
めちゃくちゃ分かりやすいので超絶おすすめです。
「積分は微分の逆演算」を正確に言うと
「関数f(x)がつくる図形の面積を関数F(x)とした時、F(x)をxで微分するとf(x)に戻る」
です
あと、簡単な「対数計算」と「二次方程式の解」も使います。
途中でワケが分からなくなっても、とりあえず
「数学を使えばこんなワケの分からない問題でも解けちゃうんだ!」
っていう雰囲気だけゆるふわっと感じてください。
キーポイント
この問題のカギになるのが正午という時刻。
もう少し正確に言うと除雪車が動き出したタイミングです。
一見すると何のヒントにもなっていないように見えますが、この除雪車の動きだけが「判明している唯一の具体的な手がかり」になります。
先に言ってしまうと、この問題は「12時→13時」と「13時→14時」で除雪車の移動した距離を比較することで最終的な答えにたどりつきます。
未知数
本問では以下の5つの未知数(変数)が必要になります。
\( x(t) = \) 除雪車が移動した距離 (マイル)
\( h(t) = \) 雪が積もった高さ(インチ)
\( b = \) 雪が降り始めてから正午までに経過した時間(時)
\( k_1 = \) 降雪のペース(インチ/時)
大丈夫!
すべて覚える必要はありません!
「とりあえずよく分からない数字を文字で表現した!」とだけ思ってください。
ちなみに「マイル」「インチ」などの単位は、「km」「cm」などの見慣れた単位に直しても全く問題ありません。
なんなら「光年」「ナノメートル」とかに勝手に変えちゃってもOKです。
最終的に「時間」以外の単位は消えてなくなるので。
考察開始
雪に関すること
さて、雪は一定のペースで振り続けています。
つまり降雪のペース\( k_1 \)は定数(ある決まった数字)です。
そして積雪量\( h(t) \)は時間に比例します。
的な。
雪は一定の割合で降り続けるので、当然ながら積雪量も(時間の経過とともに)一定の割合で増えていくわけです。
積もった雪の量
ある時点での積雪量は、
積雪量 = 降雪のペース(インチ/時) × 経過した時間
で表されます。
さて。
正午よりb時間前において雪は存在していませんでした。
つまり正午の時点で積雪量は \( k_1 \times b \) インチになっているはず。
同様に、正午以降の積雪量は \( k_1 \times t \) インチ。
ここで、
になるので、それを方程式で表します。
\begin{eqnarray}
h(t) = k_1b + k_1t
\end{eqnarray}
\begin{eqnarray}
h(t) = k_1(t + b) \tag{1}
\end{eqnarray}
この(1)の式が、問題における「積雪量」を表す式です。
除雪車の動向
次に、
\( x(t) = \) 除雪車が移動した距離 (マイル)
を考えていきましょう。
なので、除雪車の移動距離は
\( x(t) = 除雪車の速度 × t \)
で表されます。
ここで「除雪車の速度」が必要になるわけですが、問題文に書かれていません。
……どうしましょう?
微分を使います。
- 位置を微分すると速度になる
- 積分は微分の逆演算
なので除雪車が進む速度は、移動距離\( x(t) \) の導関数 \( x'(t) \) で表されます。
いやー。
位置を微分すると速度になるってアレがまさか現実世界で役に立つ日が来るとは。
「なぜ位置を微分すると速度になるのか」という疑問etcは、あとでまとめる参考書籍をご覧ください。
車と雪の関係
ところで、除雪車の速度\( x'(t) \)は、積雪量\( h(t) \)に反比例します。
雪が多くなればなるほど除雪車の進みは遅くなりますよね。
この時の関係式は、比例定数を\( k_2 \)とすると、
\begin{eqnarray}
x'(t) = \frac{ k_2 }{ h(t) } \tag{2}
\end{eqnarray}
で示されます。
比例定数はただの記号なので、「k2」でなくても「F1」とか「Finalfantasy」とかでも構いません。
さて、この(2)の式にさきほどの(1)の式を代入します。
\begin{eqnarray}
h(t) = k_1(t + b) \tag{1}
\end{eqnarray}
より
\begin{eqnarray}
x'(t) = \frac{ k_2 }{ k_1(t + b) } \tag{3}
\end{eqnarray}
はい。
この時点で積雪量\( h(t) \)が消えてなくなりました。
もう一生出てきません。
つまり具体的な「雪の降った量」はどうでもいいのです。
こんな感じでどんどん未知数を滅却していくのが本問の趣旨になります。
除雪車の速度
\( k_1 \)とか\( k_2 \)とか文字が多くて見にくいので、少し簡単にしましょう。
あらたに\( k_3 \)という定数を用意し、以下のように定義します。
\begin{eqnarray}
k_3 = \frac{ k_2 }{ k_1 }
\end{eqnarray}
この\( k_3 \)で(3)の式を置き換えると
\begin{eqnarray}
x'(t) = \frac{ k_3 }{ (t + b) } \tag{4}
\end{eqnarray}
になります。
これが除雪車の速度\( x'(t) \)です。
微分ッッ積分ッッッ良い気分ッッッッ
(4)を積分すると、
\begin{eqnarray}
x(t) = k_3 log(t + b) + C_1 \tag{5}
\end{eqnarray}
という原始関数が得られます。
\( C_1 \) は積分定数です。
「原始関数」とは、微分するとf(x)になるような関数F(x)のことです。
ここではx(t)を微分するとx'(t)になります。
いきなりlogとか出てきましたが詳しくは下記をご参照ください。
読み飛ばしても大丈夫です。
\begin{eqnarray}
\int \frac{1}{x} dx = log|x|+C
\end{eqnarray}
※ \( logx \)はxの自然対数(ネイピア数を底とする対数)
ラストスパート
ここまでくればあと一息。
(5)の式を得られれば勝ったも同然です。
今までは文字だけの進行でしたが、ついに具体的な数字が登場します。
除雪車は1時間で2マイルの除雪を完了し
\( x(t) \)は「除雪車が移動した距離」でした。
正午の時刻は\( t = 0 \)
正午から1時間後は\( t = 1 \)
1時間で移動した距離 = 1時間で移動した位置 – 正午にいた位置
なので、問題文を式で表すと
\begin{eqnarray}
2 = x(1) – x(0) \tag{6}
\end{eqnarray}
という関係になります。
ここで突然ですが以降必要になる公式のお知らせです。
よく分からなかったら読み飛ばしてください。
考えるな。感じろ。
数学はフィーリング。
\(
\log_{ a } M – \log_{ a } N = \log_{ a } \frac{M}{N}
\)
区間[a,b]で f(x)≧0 とする。
\( y = f(x), x軸, x=a, x=b \) で囲まれた部分の面積 S は
\(
S = \\
\int_a^b f(x) dx = \left[ F(x) \right]_a^b = F(b) – F(a)
\)
で表される。
※不定積分に登場する定数Cは定積分では相殺されて消失する
頭がぼーっとしてきた……。
ここで(6)の式より、
\begin{eqnarray}
2 = \left[ x(t) \right]_0^1 = x(1) – x(0)
\end{eqnarray}
なので、
\begin{eqnarray}
2 &=& \left[ x(t) \right]_0^1 \\
&=& x(1) – x(0) \\
&=& k_3 log(1+b) – k_3 log(0+b) \\
&=& k_3 [log(1+b) – log(b)] \\
&=& k_3 log \frac{b+1}{b} \tag{7}
\end{eqnarray}
が導かれます。
ラストラストスパート
あと一息と言ったな。
あれは嘘だ。
さて、(7)の式と同じように考えていきましょう。
さらに1時間で1マイルの除雪を完了した。
つまり
\begin{eqnarray}
1 = x(2) – x(1)
\end{eqnarray}
です。ここから、
\begin{eqnarray}
1 = \left[ x(t) \right]_1^2 = x(2) – x(1)
\end{eqnarray}
なので、
\begin{eqnarray}
1 &=& \left[ x(t) \right]_1^2 \\
&=& x(2) – x(1) \\
&=& k_3 log(2+b) – k_3 log(1+b) \\
&=& k_3 [log(2+b) – log(1+b)] \\
&=& k_3 log \frac{2+b}{1+b} \tag{8}
\end{eqnarray}
です!
イコールでつなぐ
さて、いま我々は
\begin{eqnarray}
2 = k_3 log \frac{b+1}{b} \tag{7}
\end{eqnarray}
\begin{eqnarray}
1 = k_3 log \frac{2+b}{1+b} \tag{8}
\end{eqnarray}
という2つの式を手にしています。
登場する変数は共通しているので、2つの式はイコールで結べるはずです。
(7)と、2倍にした(8)をイコールでつなぎます。
\begin{eqnarray}
2 = k_3 log \frac{b+1}{b} \tag{7}
\end{eqnarray}
\begin{eqnarray}
2 = 2 k_3 log \frac{2+b}{1+b} \tag{8′}
\end{eqnarray}
より、
\begin{eqnarray}
k_3 log \frac{b+1}{b} = 2 k_3 log \frac{2+b}{1+b}
\end{eqnarray}
\( k_3 \) を両辺から消し、logの形を整えます。
\begin{eqnarray}
log \frac{b+1}{b} = log \left[ \frac{2+b}{1+b} \right] ^2
\end{eqnarray}
\( log \) を両辺から排除します。
\begin{eqnarray}
\frac{b+1}{b} = \frac{ (2+b)^2 }{ (1+b)^2 }
\end{eqnarray}
両辺に \( b(b + 1)^2 \)をかけます。
\begin{eqnarray}
(b + 1)^3 = b(2 + b)^2
\end{eqnarray}
展開します。
\begin{eqnarray}
b^3 + 3b^2 + 3b + 1 = 4b + 4b^2 + b^3
\end{eqnarray}
整理すると……
\begin{eqnarray}
b^2 + b – 1 = 0 \tag{9}
\end{eqnarray}
うおおおおおようやくここまで来ました!
めまいがするほど跳梁跋扈していた多数の変数や式たちが、最終的にbというただひとつの変数しか出てこない式になりました!!
bって何でしたっけ?
b = 雪が降り始めてから正午までに経過した時間
そうです!
あとはこの(9)の式を答えを出せばいいだけです!
真のラスト
\begin{eqnarray}
b^2 + b – 1 = 0 \tag{9}
\end{eqnarray}
さあどうやって解けばいいんだ!
因数分解は無理っぽい!
ならば!!
二次方程式の解!!!
方程式 \( ax^2+bx+c = 0 \) の解は、
aが0ではない場合、
\begin{eqnarray}
x = \frac{-b \pm \sqrt{ b^2 – 4ac }}{2a}
\end{eqnarray}
これを(9)の式にあてはめて計算すると!!
\begin{eqnarray}
b = \frac{ -1 \pm \sqrt{5}}{2}
\end{eqnarray}
近似値を取ると!!!
\begin{eqnarray}
b ≒ 0.618
\end{eqnarray}
もしくは
\begin{eqnarray}
b ≒ -1.618
\end{eqnarray}
うむ!!!
さて、bは「雪が降り始めてから正午までに経過した時間」。
すなわち解としてありえるのは正の値のはず!!
つまり解はァァァ
\begin{eqnarray}
b ≒ 0.618
\end{eqnarray}
で確定!!!
そしてbの単位は「時」! つまり!!
正午から0.618時間前に雪は降り始めた。
その具体的な時間は!!!
\begin{eqnarray}
0.618時間 &=& 1時間 \times 0.618 \\
&=& 60分 \times 0.618 \\
&=& 37分
\end{eqnarray}
以上より雪が降り始めたのは正午から37分前!
午前11:23です!
まとめ、そしておすすめ書籍
いやー。
本当に解けちゃうんですねー。
数学ってすごい。
ところで、記事内で登場した「微分積分」について
「よくわからないぜ!」
って思った方は、以下の参考書籍をおすすめします。
これ。
やばいです。
超絶わかりやすい。
「高校時代に読んでおくべき本ランキング」でまちがいなくトップ3にランクインする良書。
これ読むのと読まないのとでは受験事情が大幅に変わってくる。
それほどのレベル…!
あーーーこれ高校時代に読みたかったーーー!!
「微分積分って面白いんだなー」って気づけます。
全高校生におすすめ。
中学生でも読めるくらい分かりやすいので中学生にもおすすめ。
微分積分をやり直したい社会人にもおすすめ。
何かもう全員におすすめ。
「マスター。微分積分とか以前にまず数学が苦手なんだが」
「かしこまりました。こちらはいかがでしょう」
「『数学ガールの秘密ノート/式とグラフ』……ほう、瀟洒な味わいだ」
「方程式、比例、グラフ、接線など数学の基礎がふんだんに盛り込まれております」
「なるほど……かなり分かりやすく書かれているな。これなら楽しめそうだ」
数学の基本をめちゃくちゃ丁寧に教えてくれるため、1冊目で読むのもおすすめです。
というかもはや『数学ガールの秘密ノート』シリーズはまとめて買うべき。
三角関数、場合の数、数列、ベクトル……。
受験や学校の勉強でめっちゃ役に立つ数学スキルが学べる(そして死ぬほどわかりやすい)ので、本当におすすめです。
実は『数学ガール』にはシリーズが2つあります。
- 『数学ガール』
- 『数学ガールの秘密ノート』
今までお話ししていたのは後者。
『数学ガールの秘密ノート』シリーズ。
数学のある分野に関して1冊ごとに焦点が当てられています。
「わかりやすさ」がメインになっているため、中学生から楽しめる数学入門書。
そして前者。
『数学ガール』シリーズ。
やや高度な内容が多く含まれており、高校生以上が対象です。
時々「ちょっと難しいな」って思う話題も出てきますが、「数学面白い!」って強烈に感じることができます。
なにより、受験にすごく役立つ。
シリーズ1冊目の
数学ガール (数学ガールシリーズ 1)
だけでも読んでみてください。
数学が得意分野になります。
あとおすすめは……教養として面白くて話のネタにもなる
『数学ガール/フェルマーの最終定理』
『数学ガール/ゲーデルの不完全性定理』
の2冊。
このシリーズもまとめ買いがおすすめ。
ここまでお読みいただきありがとうございました。
この数学クイズが、荒涼とした現代社会に咲きほこる一輪のアザレアとなりますように。
参考
This Is Not A Trick Question: The Famous Snow Plow Math Problem