3以上9999以下の奇数aで、a2-a が10000で割り切れるものを全て求めよ
(東京大学)


解答の筋道はそれほど難しくない。最悪、3から9999までをすべて根性で試してみれば、いつかは解けるだろう。
「そういう真面目な根性論を振りかざすような姿勢は、学問には適さない」という、東大の姿勢を表すような問題。東大はたまにこういう問題を出す。

a2-a = a(a-1) なのだから、これは連続する2数の積になる。
aが奇数なのだから、当然、a-1 は偶数になる。

10000を因数分解してみると、24×54
aは奇数なので、24を因数に含むことはできない。よって、a-1のほうが24を因数にもつ。

では54を因数に含むのは、aなのかa-1なのか。
もしa-1が54を因数に含むとしたら、a-1=24×54×k (kは自然数)となり、これは10000kのことなので、aが9999を超えてしまう。
よって、aのほうが54を因数にもつ。

まとめると、
a = 54m = 625m
a-1 = 24n  (m, nはともに自然数、かつmは奇数)
ということになる。

3 ≤ a = 625m ≤ 9999 より、
3/625 ≤ m ≤ 9999/625
0.0048 ≤ m ≤ 15.9984
つまりmは、1, 3, 5, 7, 9, 11, 13, 15 のいずれかの数になる。


ここまではいい。数学的な能力をなにひとつ使うことのない単純作業といえる。
問題はここから先の手順で、ここに東大の入試の意図が隠れているような気がする。


最終候補となる数が8個に絞られたのだから、ここから先は実験してもいいと思う。3から9999までの数をすべて実験するよりは評価は高かろう。
実際に、試験場での受験生は、ここまで詰めたら、あとはひとつひとつ試して答えを出したと思う。

しかし、そもそもの出題の意図が「単純な実験では到底答えが出そうにない問題」に対する姿勢を見るものである以上、最後の詰めになって力技に頼るのは、なんか出題者に負けたような気がする。入試である以上、最優先するのは正答を出すことなのだろうが、入試を通して大学側が見ようとしている資質の見当がついている以上、その問いを正面から打ち返すのが筋ではないか、という気がする。

僕が今回、この問題を取り上げたのは、ここから先の手順が高校数学の範囲では扱いにくいからだ。
「高校数学の範囲を逸脱した問題」とは言わない。因数分解だけで候補を絞って、後は実験、という手順でも正解は出るし、その解法ではさしたる時間も取らない。10分もあれば解ける問題だろう。

しかし、現実の世界では、この問題における「3から9999までの間で」という条件が、ないことのほうが多い。これがもし、99999999999までの数字を範囲にしている問題だったら、どうするのか。範囲のない無制限な可能性を考えなくてはいけない状況だったら、どうするのか。

数学は高校の履修課程の中で、唯一、演繹法の演習を行う科目だ。経験によって積み重ねた一般化よりも、きちんと公理が与えられた学問体系で、限られた道具を使いこなす能力が問われる。
その数学の入試問題で、最後の最後に力技に頼るような問題を、東京大学が出題するとは思えない。ここは数学の王道に従って、最後まで条件を絞り込む演算を行ったほうが、汎用性が高いだろう。

高校時代に数学をさぼっていた僕は、高校数学の範囲でこれ以降の条件を絞り込む方法を知らない。赤本や参考書などにはそれらしい答えが載っているのだろうが、僕がこの問題を解くのであれば、高校数学の範囲には入っていない「合同式」を使う。

合同式というのは、割り算の、商ではなく「余り」に注目する演算の方法だ。例えば、5で割った余りを扱うときは、mod 5 と書く。「6は、5で割ると1余る」というのは、合同式では

6 ≡ 1 (mod 5)

と書く。

先ほどの問題に戻ると、a = 625mより、
a-1 = 625m-1 = 16n となる。
つまり、625m-1 が16を因数としてもつときのmの値を求めろ、という問題になる。
これを合同式で記述すると、

625m-1 ≡0 (mod 16) ・・・(1)

となる。
625を16で割ると、余りは1なので、

625 ≡ 1 (mod 16) ・・・(2)

(2)を(1)に代入すると、

m-1 ≡ 0 (mod 16)
m ≡ 1 (mod 16)

となる。つまり、求めるmは、「16で割って余りが1」になる数である。
先ほど、mとなる数の候補は、1, 3, 5, 7, 9, 11, 13, 15 であると求めた。この中で「16で割って1余る数」は、1のみ。
よって、m=1。
a=625m より、求める数aは、625 ひとつだけ。(答)


「力技に頼って実験で答えを導くことの否定」を受ける体裁にしておいて、高校数学の範囲で解けなかったのだから、僕としては「引き分け」という感じの問題だ。
実際のところ、この解法は実際の入試では減点されるのだろうか。

過去の入試問題でも、「不適切な出題」とされているのは、「高校の履修範囲から逸脱した問題」であることが多い。受験生の間でも「高校で習っていない解法を使うと減点される」という「常識」があるような気がする。
僕も入試問題の作問に関わったことがあるが、「高校の学習範囲内に収める」ことに関しては、入試管理委員会が非常に厳しくチェックする。なんでも、そういうことに関して頻繁にクレームをつけてくる人がいるのだそうだ。別に予備校関係者というわけではなく、普通の一般の人で、そういうことに固執する人がいるらしい。

しかし実際のところ、試験問題を作る大学の先生というのは、それほど厳密に高校の履修範囲を知らない。大学の先生というのは教育者ではなく学者なので、制限のかかった学習指導要領など知ったこっちゃない、という人が多い。
また大学受験をする人というのは、高校生ばかりではない。大検合格者や一般社会人など、高校生以外の人も受験する。そういう人たちに「これは高校で習っていない範囲なので」と解答に制限を設けることが、学問研究機関への登竜門として適切な姿勢だとは思わない。

今回の問題でも、別に合同式を使ったところで、減点はされないと思う。数学なんていうものは、要するに「できる限り楽をする答案」が、優れた答案であることが多い。ちょっと難しい問題になるとすぐに思考を停止して力技に頼るような人は、学問には向かない。

自然科学系の分野では実験による試行錯誤が不可欠で、実際に世の中ではそっちの姿勢のほうが重要であることのほうが多い。誤差や個別の特殊性を切り捨てる判断力も必要だろう。
しかし、その対極ともいえる「決まった規則だけから、一定のルールに従って、結論を出す」という、理想化された状況化での思考能力を鍛えることができるのは、高校までの教科では数学だけなのだ。その数学の入試問題で、すぐに実験からの一般化に走るような姿勢からは、「なぜ学校で数学を学ぶのか」ということを全く理解していない、ということをさらけ出すような答案しか生まれないと思う。



あるいは「そんなこと一回も考えたことない」ような答案。