東京大学 1998年 理系 第4問 解説

方針・初手
与えられた関数 $f(x)$ の定義域における単調性を確認し、数列 $A_k = [f(k)]$ ($k = 0, 1, \dots, 36n$)がどのように増加していくかを調べる。 相異なるものの個数は、数列の最小値 $A_0$ から最大値 $A_{36n}$ までの整数の総数から、値が「スキップされる(飛ばされる)」回数を引くことで求められる。スキップが発生する条件を階差 $f(k+1) - f(k)$ から特定し、区間ごとに評価して個数を数え上げる。
解法1
関数 $f(x)$ を展開して微分する。
$$ f(x) = \frac{54n x^2 - x^3}{864n^2} $$
$$ f'(x) = \frac{108n x - 3x^2}{864n^2} = \frac{3x(36n - x)}{864n^2} = \frac{x(36n - x)}{288n^2} $$
$0 \leqq x \leqq 36n$ の範囲において $f'(x) \geqq 0$ であるため、$f(x)$ はこの区間で単調増加する。 したがって、整数 $k$ に対する数列 $A_k = [f(k)]$ も広義単調増加であり、最小値と最大値はそれぞれ以下のようになる。
$$ A_0 = [f(0)] = 0 $$
$$ A_{36n} = [f(36n)] = \left[ \frac{(36n)^2 (54n - 36n)}{864n^2} \right] = \left[ \frac{1296n^2 \cdot 18n}{864n^2} \right] = [27n] = 27n $$
数列 $A_k$ の各ステップにおける増分 $D_k = A_{k+1} - A_k$ を考える。 平均値の定理より、ある実数 $c$ ($k < c < k+1$)が存在して、
$$ f(k+1) - f(k) = f'(c) $$
となる。$f'(x)$ の最大値は、放物線の頂点である $x = 18n$ のときであり、
$$ f'(18n) = \frac{18n(36n - 18n)}{288n^2} = \frac{324n^2}{288n^2} = \frac{9}{8} $$
区間全体で $0 \leqq f'(x) \leqq \frac{9}{8} < 2$ であるから、$0 \leqq f(k+1) - f(k) < 2$ が成り立つ。 これにより、各ステップの増分 $D_k = [f(k+1)] - [f(k)]$ は $0, 1, 2$ のいずれかの値しかとらない。
ここで、$A_k$ の値として現れる相異なる整数の個数を $N$ とする。 値の増分が $2$ となる(すなわち整数が $1$ つ飛ばされる)回数を $T$ とすると、$0$ から $27n$ までの $27n+1$ 個の整数のうち $T$ 個がスキップされることになるため、求める個数 $N$ は次のように表せる。
$$ N = 27n + 1 - T $$
次に、増分が $2$ になる回数 $T$ を求める。 $D_k = 2$ となるための必要条件は $f(k+1) - f(k) > 1$ である。 $f'(x) > 1$ となる $x$ の範囲を調べると、
$$ \frac{x(36n - x)}{288n^2} > 1 $$
$$ x^2 - 36nx + 288n^2 < 0 $$
$$ (x - 12n)(x - 24n) < 0 \iff 12n < x < 24n $$
これをもとに、$0 \leqq k \leqq 36n-1$ の区間を3つに分けて考察する。
(i)
$0 \leqq k \leqq 12n-1$ のとき 区間 $(k, k+1)$ は $x \leqq 12n$ に含まれるため、この区間で $f'(x) \leqq 1$ である。 したがって $f(k+1) - f(k) < 1$ となり、$D_k$ は $0$ または $1$ のみをとる。
(ii)
$24n \leqq k \leqq 36n-1$ のとき 同様に区間 $(k, k+1)$ は $x \geqq 24n$ に含まれるため、$f'(x) \leqq 1$ となり、$D_k$ は $0$ または $1$ のみをとる。
(iii)
$12n \leqq k \leqq 24n-1$ のとき 区間 $(k, k+1)$ は $12n < x < 24n$ に含まれるため、この区間で常に $f'(x) > 1$ である。 平均値の定理より $f(k+1) - f(k) > 1$ が常に成り立つため、$D_k$ は $1$ または $2$ のみをとる($D_k = 0$ にはならない)。
以上より、$D_k = 2$ となるのは (iii) の区間に限られることがわかる。 (iii) の区間には $12n$ 個のステップがある。この区間での増分の総和を計算するために、$f(12n)$ と $f(24n)$ の値を求める。
$$ f(12n) = \frac{(12n)^2(54n - 12n)}{864n^2} = \frac{144n^2 \cdot 42n}{864n^2} = 7n $$
$$ f(24n) = \frac{(24n)^2(54n - 24n)}{864n^2} = \frac{576n^2 \cdot 30n}{864n^2} = 20n $$
これらは整数であるため、$A_{12n} = 7n$、$A_{24n} = 20n$ となる。 したがって、(iii) の区間全体での増分の和は、
$$ \sum_{k=12n}^{24n-1} D_k = A_{24n} - A_{12n} = 20n - 7n = 13n $$
(iii) の区間では $D_k \in \{1, 2\}$ であり、ステップ数は $12n$ 個である。 このうち $D_k = 2$ となる回数を $T$、$D_k = 1$ となる回数を $O$ とすると、
$$ \begin{cases} T + O = 12n \\ 2T + O = 13n \end{cases} $$
辺々引くことで $T = n$ が得られる。 (i) と (ii) の区間では $D_k = 2$ は発生しないため、数列全体でのスキップ回数も $T = n$ である。
よって、求める相異なる整数の個数 $N$ は、
$$ N = 27n + 1 - n = 26n + 1 $$
解説
数列 $[f(k)]$ が取り得る値の種類数を問う問題である。全体の最大値から「飛ばされた値の個数(スキップ回数)」を引くというアプローチを取ることで、見通しよく解くことができる。 階差 $f(k+1) - f(k)$ を平均値の定理と微分を用いて評価し、それが $1$ を超える区間と超えない区間に分けるのが最大のポイントである。増分が特定の値しかとらないことを利用した連立方程式により、数え上げを大幅に簡略化できる。
答え
$$ 26n + 1 $$
自分の記録
誤りを報告
解説の誤り、誤字、表示崩れに気づいた場合は送信してください。ログイン不要です。











