整数のもんだい

京大のセンスに脱帽。
「(2)あなたの好きな自然数 n を1つ決めて g(n) を求めよ。その g(n) の値をこの設問におけるあなたの得点とする。」
こういうことを、思いついた上に実行までできてしまうのがすごい。
(1)は解くだけなら簡単。nが1から6までの場合について、計算して確かめればいい。
特に思いつかなかったので、そのように解くと、何と6乗の時点で余りがみんな1に。
そうかこれはフェルマーの小定理だ。
この定理は意味がわからないのでつい避けてきたけど、入試に出るんだなあ。
そして(2)。(1)を解く前は、(1)と(2)の関連性がよくわからなかったが、
さっき作った「1〜6の1〜6乗を7で割った余りの表」が役に立つ。
今度はnが肩に乗っているのでややこしいが、例の表をタテ(90度回す)に見ればいい。
kが7の場合は何乗しても7の倍数なので考える必要がなく、
それ以外の場合はnに対して余りが最長でも周期6でループするから、
やはりnが1〜6の場合のみを考えればいい。
で、あとは自分で作った数表をタテに足して、7で割った余りを比較するだけ。
ここで改めてうまいなあと思った。
薄々気づいてたけど、7で割った余りってきれいに巡回するから足すと7の倍数なんだよね。
つまり、1+2+3+4+5+6 = (1+6)+(2+5)+(3+4) = 7×3。
だから、試しにnを1としてみると、g(1) = 3f(28) となって気分的に死ねる。
これ、最大のg(n)を与えるnを1つ求めよとかの出題でも解答自体は一緒になるんだよ。
正解の18以外は全てゼロ、不正解のnを与えた人は正しく計算してもg(n) = 0点ゲット!
せっかくだから、フェルマーの小定理の証明風に(1)をやってみようと思う。