過去ログ

uchinyan
はい,こんにちは。さて,今回の問題は...
119 はすぐに分かったのですが,最大かどうかと,例が私の題意の解釈と合わないので,認証に走りました (^^;

さて,解について少し考えてみました。以下,数学になってしまいますが,一応。

a(m,n) = m(m+1)(m+2)...(m+n-5), ただし,m, n は,m >= 1, n >= 5 の整数
とおくと,題意は,a(m,n) = n! を満たす m, n を求めることになります。
まず,明らかに,a(m,n) は m, n について狭義に(等しくなることなく)単調増加します。
そこで,m > 7 ならば,a(m,n) > a(7,n) = 7 * 8 * ... * n * (n+1) * (n+2)
もし n >= 26 ならば,(n+1) * (n+2) >= 27 * 28 = 756 > 720 なので,
7 * 8 * ... * n * (n+1) * (n+2) > 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 * ... * n
つまり,m >= 8 かつ n >= 26 のとき,a(m,n) > n! となり,a(n,m) = n! の解は存在しません。
したがって,解があるとすれば,m <= 7 又は n <= 25 のとき,になります。

まず,m <= 7 の場合,n には制限なし,を調べます。
m <= 5 ならば,m >= 1, m+n-5 <= n より,
a(m,n) = m(m+1)(m+2)...(m+n-5) < 1 * 2 * 3 * 4 * 5 * 6 * 7 * ... * n
なので,解はありません。
m = 6 のときは,
a(6,n) = 6 * 7 * ... * n * (n+1) = 1 * 2 * 3 * 4 * 5 * 6 * 7 * ... * n
n+1 = 120
n = 119
が解になります。
m = 7 のときは,
a(7,n) = 7 * 8 * ... * n * (n+1) * (n+2) = 1 * 2 * 3 * 4 * 5 * 6 * 7 * ... * n
(n+1)(n+2) = 720
これは,n = 25 で (n+1)(n+2) = 702,n = 26 で (n+1)(n+2) = 756,となり,解はありません。
そこで,(m,n) = (6,119) が解となります。
もう一つの場合は n <= 25 なので,n の最大は 119 と分かり,今回の問題の答え,最大のアは 119 になります。

次に,n <= 25 の場合,m には制限なし,です。
残念ながら,あまりうまい方法を思いつかなかったので,n >= 5 に注意して,
a(m,25) = m(m+1)(m+2)...(m+20) = 1 * 2 * 3 * 4 * 5 * ... * 24 * 25
a(m,24) = m(m+1)(m+2)...(m+19) = 1 * 2 * 3 * 4 * 5 * ... * 24
...
a(m,6) = m(m+1) = 1 * 2 * 3 * 4 * 5 * 6 = 720
a(m,5) = m = 1 * 2 * 3 * 4 * 5 = 120
をプログラムで調べたところ,(m,n) = (120,5) しか解はありませんでした。

そこで,結局,
1 * 2 * 3 * 4 * 5 * 6 * ... * 118 * 119 = 6 * 7 * ... * 119 * 120
1 * 2 * 3 * 4 * 5 = 120
だけが解のようです。
もちろん,前者が,今回の問題の答えです。

なお,m >= 7 かつ n >= 120 のとき,でも,a(m,n) = n! の解が存在しないことがいえますが,
また,今回の問題を解くにはそれで十分ですし,分かりやすいとも思いますが,
後の検討を楽にしようと思って,後で調べる n の範囲が小さくなるようにしてみました。
でも,あまり意味がありませんでしたね (^^;
ネコの住む家   2月19日(木) 21:00:49   MAIL:uchi@sco.bekkoame.ne.jp   33962

過去問題一覧へ戻る