はい.今回はこの「方針」を解説したいと思います.
なお,この記事は完全に私の自己満なので,もし今から示すものが既存の解答と似ていても咎めないでください.というか解答そのものを書くつもりはありません.そのかわり,論証などに間違いがあればボロクソに言っていただいて結構です.
さて,件の問題がこちらです.
問題(
画像の引用元
)
見るからに面白いです.約数が大好きな私が受験生なら真っ先に取り掛かってますね.
問題を解き始める前に,少し考察をしておきましょう.$f, g$の定義から,次の等式が成り立つことがわかります.
$$
f(3n) = f(n), \ \ g(3n) = g(n) \ \ \ \ (\forall n)
$$
よって,$n$は$3$で割り切れないとしても問題はありません.
正の整数$n$が与えられたとし,$n$は$p_1, \ldots, p_m$を素因数にもつとします.上のことから,$p_1, \ldots, p_m$を$3$で割った余りは,いづれも$1$または$2$としてよいです.
もし$p_1 \equiv 1 \ (\mathrm{mod}\ 3), \ p_2 \equiv 2 \ (\mathrm{mod}\ 3)$なら$p_1p_2 \equiv 2 \ (\mathrm{mod}\ 3), \ \ p_1^2, p_2^2 \equiv 1 \ (\mathrm{mod}\ 3)$です.考察はこのへんにして,そろそろ解いていきましょう.
(1)
$2800 = 2^45^27$で,上の考察から$f$は$(\{2\text{の偶数乗}\times5\text{の偶数乗}\}\text{の個数}+\{2\text{の奇数乗}\times5\text{の奇数乗}\}\text{の個数})\times2$,
一方で$g$は$(\{2\text{の偶数乗}\times5\text{の奇数乗}\}\text{の個数}+\{2\text{の奇数乗}\times5\text{の偶数乗}\}\text{の個数})\times2$
であるとわかるので,$f(2800) = 16, \ g(2800) = 14$がでます.なお,偶数乗には$0$乗を含みます.
(2)
すぐにでも証明を始めたいところですが,その前に記号を定義しておきましょう.
さて,(1)の計算からもわかるように
$$
f(n) = f(D_0(n)) \cdot D(n), \ \ g(n) = g(D_0(n)) \cdot D(n) \ \ \ \ (\forall n)
$$
が成り立ちます.ゆえに,$f(D_0(n)) \geq g(D_0(n)) \ \ (\forall n)$を示せばよいことがわかります.
ここで,$n = 2800$として(1)をどのように計算したのかを思い出しましょう.$D_0(2800) = 2^45^2$でした.このとき$f$は$2,2,2,2,5,5$の中から偶数個を選んで積の値の個数を計算し,$g$では奇数個を選んで同様のことを計算していましたね.これは一般の$n$でも変わりません.
それではさっそく,$f(D_0(n)) \geq g(D_0(n)) \ \ (\forall n)$を示すべく漸化式を立てましょう.
正の整数$n$を固定し,$D_0(n) = p_1^{a_1}\cdots p_m^{a_m}$と素因数分解されたとします.$1 \leq k\lt m$なる整数$k$に対し
$$
\begin{array}{l}
\left\{
\begin{array}{l}
E_{k + 1} = (\mathrm{floor}(a_{k + 1} / 2) + 1)E_k + \mathrm{ceil}(a_{k + 1} / 2)O_k, \\
O_{k + 1} = \mathrm{ceil}(a_{k + 1} / 2)E_k + (\mathrm{floor}(a_{k + 1} / 2) + 1)O_k
\end{array}
\right. \\
\left\{
\begin{array}{l}
E_1 = \mathrm{floor}(a_1 / 2) + 1, \\
O_1 = \mathrm{ceil}(a_1 / 2)
\end{array}
\right.
\end{array}
$$
によって数列を定めます.$E_m = f(D_0(n)), \ O_m = g(D_0(n))$がすぐにわかり,$E_m \geq O_m$も数学的帰納法によりただちに示されるので,$f(n) \geq g(n)$は任意の$n$に対し示されます.
(3)
(2)の証明の途中で,実は$E_m - O_m = 0, 1$であることがわかります.$g(n) = 15$なら$D(n)$は$15$の約数ですから,(2)に示したことから$f(n) = 15, 16, 18, 20, 30$です.
ここで,「$D(n)$が$15$の正の約数すべてをとりうるか」「$f(n) = 15$となりえるか」という問題がうまれますが,前者は$3$で割って$1$余る素数のべきを考えることで解決し,後者は前者を踏まえたうえで素数のべきを$2$倍すれば解決します.
$ $
私はこの問題を$20$分程度で解きましたが,高校生は高い緊張の中これを解かされるんですね......なんて恐ろしい.