2021年 日本数学オリンピック本選 第4問 解答例
考え方:
条件式を移項すると$${a_{n+2} - a_{n} < a_{n+5} - a_{n+3}}$$となります。
これは$${a_n}$$の傾き($${n}$$が一定量増えた時の$${a_n}$$の増加量)が
$${n}$$の増加とともに大きくなることを示唆しています。
つまり、$${a_n}$$は全体として下に凸な関数に乗っていると考えられます。
端にある$${a_1, a_{2021}}$$あたりが最大値を取りそうです。
以下の解答例に示す通り、
$${a_{k+6} - a_k + 6 \leqq a_{k+12} - a_{k+6} (1)}$$
を容易に導くことができます。
よって、$${n}$$を$${6}$$で割った余りによって
$${\{a_n\}}$$を6数列に分けるのが良さそうです。
まず$${a_1, a_7, \cdots, a_{2017}}$$の数列を考えると、
最大と最小の差が最小になるには
(1)の不等式で常に等号が成立するのが有利です。
この時、$${a_n}$$は$${n}$$の2次関数となります。
また、$${a_1}$$と$${a_{2017}}$$が近く、中央の$${a_{1009}}$$あたりが
最小になるのが良さそうと気づきます。
逆の端がある$${a_5, a_{11}, \cdots, a_{2021}}$$の数列でも同様のことが言え、
$${a_{1013}}$$あたりが最小になるのが良さそうと気づきます。
この2つの数列を結ぶ関係として、元の条件式から
$${a_{k+6} - a_k + 4 \leqq a_{k+10} - a_{k+4}}$$
が得られること、
また、この2つの数列の最大値と最小値の差は同じにできることから、
$${a_1 = a_{2021}, a_{1009} = a_{1013}}$$となるような2次関数、
つまり$${p(n - 1011)^2 +q}$$の形の関数がよいと気づきます。
また、(1)式で常に等号が成立する場合$${p = 1/12}$$となり、
$${q}$$を上手く選んで条件を満たす$${\{a_n\}}$$を作れれば、
それが最小を与えそうです。
$${\{a_n\}}$$すべてに等しい値を足しても変わらないので、
$${a_{1009} = a_{1013} = 0}$$としてしまって構いません。
全体が下に凸になるというイメージから
$${a_{1010}, a_{1011}, a_{1012}}$$は$${0}$$以下の値にしたいところですが、
最小値をなるべく大きくとるためにも
$${a_{1010}=a_{1011}=a_{1012} =0}$$と置いてみます。
元の条件式の不等式を満たす中で最小のものを次々選んでいくと、
$${\{a_n\}}$$の第$${1009}$$項以降の項は
$${0, 0, 0, 0, 0, 1, 1, 2, 3, 4, 5, 7, 8, 10, 12, 14, 16, 19, \cdots}$$
となりますが、
(1)で等号としたときの条件を満たしていることがわかります。
つまり$${p=1/12}$$で条件を満たす数列が見つかりそうです。
$${a_{1010}=a_{1011}=a_{1012} =0}$$, $${a_{1014}=1}$$となるように
6つの数列について$${q}$$を見つけると、
確かに条件を満たす数列が見つかります。
あとはこの数列が最小値を与えることを、
これまでしてきた考察を丁寧に記述することで示せば完成となります。
解答例:
$$
a_k = \begin{cases}
\frac{1}{12}(k-1011)^2 + \frac{1}{4} & (k \equiv 0 \text{ mod }6) \\
\frac{1}{12}(k-1011)^2 - \frac{1}{3} & (k \equiv 1, 5 \text{ mod }6)\\
\frac{1}{12}(k-1011)^2 - \frac{1}{12} & (k \equiv 2, 4 \text{ mod }6)\\
\frac{1}{12}(k-1011)^2 & (k \equiv 3 \text{ mod }6)\\
\end{cases}
$$
は条件を満たす。
この時、最小値$${a_k}$$の最小値は$${0}$$であり、
最大値は$${a_1 = a_{2021} = 85008}$$である。
よってその差は$${85008}$$である。
これが最小値であることを示す。
条件式より、
$$
\begin{array}{cccc}
a_{k+2} - a_k &< a_{k+5} - a_{k+3} &< a_{k+8} - a_{k+6} &< \cdots \\
a_{k+3} - a_{k+1} &< a_{k+6} - a_{k+4} &< a_{k+9} - a_{k+7} &< \cdots \\
a_{k+4} - a_{k+2} &< a_{k+7} - a_{k+5} &< a_{k+10} - a_{k+8} &< \cdots \\
\end{array}
$$
である。各値は整数であるため、
$$
\begin{array}{cc}
a_{k+2} - a_k + 2 &\leqq a_{k+8} - a_{k+6}\\
a_{k+4} - a_{k+2} + 2 & \leqq a_{k+10} - a_{k+8}\\
a_{k+6} - a_{k+4} + 2&\leqq a_{k+12} - a_{k+10}\\
\end{array}
$$
となり、辺々足して
$${a_{k+6} - a_k + 6 \leqq a_{k+12} - a_{k+6}}$$
を得る。また、
$${a_{k+6} - a_k + 4 \leqq a_{k+10} - a_{k+4}}$$
である。
以下、$${\{a_n\} (n = 1, 2, \cdots 2021)}$$が、
最大値と最小値の差が最小(85008以下)となるものであるとする。
数列$${ \{ a_{6p-5}\} (=a_1, a_7, a_{13}, \cdots, a_{2017})}$$の中で
最小値を与える$${p}$$(複数ある場合は最小のもの)を$${p_0}$$とすると、
$${0 < a_{6p_0 - 11} - a_{6p_0-5} \leqq a_{6p_0 - 17} - a_{6p_0-11} - 6 \leqq a_{6p_0 - 23} - a_{6p_0-17} - 12 \leqq \cdots}$$
となる。よって、
$$
\begin{align*}
a_1 - a_{6p_0-5} &= \sum_{i=1}^{p_0 -1} (a_{6i -5} - a_{6i + 1}) \\
& > \sum_{i=1}^{p_0 -1} 6(i - 1) \\
& = 3p_0(p_0-1)
\end{align*}
$$
を得る。
$${p_0 \geqq 170}$$の時、$${3p_0(p_0-1) \geqq 86190 > 85008}$$となるため適さない。
よって$${p_0 \leqq 169}$$である。
また、
$${0 \leqq a_{6p_0 + 1} - a_{6p_0-5} \leqq a_{6p_0 +5} - a_{6p_0 - 1} - 4 \leqq a_{6p_0 +11} - a_{6p_0 +5} - 10 \leqq \cdots}$$
であるから、
$$
\begin{align*}
a_{2021} - a_{6p_0-1} &= \sum_{i=1}^{337 - p_0} (a_{6i + 5} - a_{6i - 1}) \\
& \geqq \sum_{i=1}^{337 - p_0} \{6(i - 1) + 4\} \\
& = 3(336 - p_0)(337 - p_0) + 4(337-p_0)
\end{align*}
$$
を得る。
$${p_0 \leqq 168}$$の時、$${3(336 - p_0)(337 - p_0) + 4(337-p_0) \geqq 85852 > 85008}$$となるため適さない。
以上より$${p_0 = 169}$$である。
このとき、$${a_{6p_0 +1} -a_{6p_0 - 5} = t}$$とおくと、
$$
\begin{align*}
a_1 - a_{6\cdot 169-5} &= \sum_{i=1}^{169 -1} (a_{6i -5} - a_{6i + 1})\\
& \geqq \sum_{i=1}^{168} (6i - t)\\
& = 507\cdot 168 - 168t \\
a_{2021} - a_{6 \cdot 169-1} &= \sum_{i=1}^{337 - 169} (a_{6i + 5} - a_{6i - 1}) \\
& \geqq \sum_{i=1}^{168} \{6(i - 1) + t + 4\}\\
& = 3\cdot 167 \cdot 168 + 168(4+t) \\
&= 505\cdot 168 + 168t
\end{align*}
$$
となる。
この$${2}$$数のうち小さい方の値が最小となるのは$${t=1}$$の時である。
その値は$${85008}$$となり、それより小さくはできない。
以上より、求める値は$${85008}$$
コメント:
後半の、より小さい数列は作れないことを示す部分は、
実際の答案ではある程度省略してよいように思います。
今回は解説もかねて、より正確に記述してみました。
解答は結論を天下り式に書きましたが、
正解を知らない状態から数列を構成していくのも可能だと思います。
記述内容としては難しくなっていくため、このような解答例としてみました。
お知らせ:
少しでも興味深い、楽しいと感じたらぜひスキやコメント、フォローください!
他に公開している記事などの一覧はこちら
ぜひ初めに見てください。|光捷 (note.com)
この記事が気に入ったらサポートをしてみませんか?