0以上の整数xに対して、C(x)でxの下2桁を表すことにする。たとえばC(12578)=78 C(6)=6である。nを2でも5でも割り切れない正の整数とする。
(1)x,yが0以上の整数ののとき、 C(nx)=C(ny)ならば、C(x)=C(y)であることを示せ。
(2)C(nx)=1となる0以上の整数xが存在することを示せ。
(京大文系数学 1999年[3])
なかなかつかみ所のない問題で、解法暗記にも大して向かなく見えるし、どうしてもこういう問題は敬遠してしまいます。
この問題に出会ったのは、多分2ヶ月ほど前ですが、3,4回ぐらい解法を眺めて、ようやくこの問題の面白さが分かりました。
まず、(1)について。
これはあくまで(2)のための前提なので、簡単に済ませます。
C(nx)=C(ny)ということは、nxとnyの下二桁が同じになる、つまり、
nx-ny が100で割り切れる
ということと同値です。ゆえに、kを自然数として
nx-ny=100k
⇔n(x-y)=2^2*5^2*k
とできますね。
一方、nは2でも5でも割り切れない数ですから、100=2^2*5^2とは当然互いに素です。
よって、x-yが必ず100で割り切れないといけません。
x-yが100で割り切れるということは、C(x)=C(y)と同値であり、題意は示されました。
(2)について。ここからが本題です。
(1)までは分かるんですが、この(2)の解説がどうも納得がいきませんでしたので、結構敬遠してました。
「京大文系数学の25ヵ年」では
C(0)=0 C(1)=1 C(2)=2 , ....... , C(99)=99
は全て異なるから、(1)より
C(n*0), C(n*1) , C(n*2), ....... ,C(n*99) ・・・・①
の100個の値は全て異なる
という部分があり、ここからどんどん論証していくような解答になっているのですが、前半部から、どうして①へと論理が飛躍できるのか、意味が分かりませんでした。
ただあることに気付きます。
これは、(1)の対偶を考えているのか
と。
すなわち、(1)で真を示した命題
「x,yが0以上の整数ののとき、 C(nx)=C(ny)ならば、C(x)=C(y)」の対偶
「x,yが0以上の整数ののとき、 C(x)≠C(y)ならば、C(nx)≠C(ny)」
を踏まえていることが分かったのです。
(解答はちょっと不親切かな、とも思いました。・・・が、自分の鈍感のせいでしょうww)
こうすれば、①への論理は分かります。
これさえ理解できれば、後は下り坂をゆっくり下るだけですから。
①より、C(n*0), C(n*1) , C(n*2), ....... ,C(n*99) の値は全て異なることになります。
その一方で、C(n*0)~C(n*99)は0以上99以下の全ての整数、つまり100個の整数のうちいずれかになります。
これをまとめると「異なる100個の整数であり、1~99のうちのいずれか」です。
つまり、1つたりともカブってはならず、C(n*0)~C(n*99)の中には0~99までの全ての整数が含まれることになりますから、当然C(nx)=1となるxも存在することになります。
ちなみに、これを経験的事実から検証していきましょう。
2でも5でも割り切れない整数nをn=3として考えてみます。
すると、C(3x)=1となる整数xは何になるでしょうか。
これは、美しい解法が思いつかないので「下一桁が7となる整数」をあてずっぽうで代入した結果、もっとも小さい数ですとx=67がこれに当てはまります。
ちなみに、この問題の面白い所は何かと言うと、(2)の過程にあります。
つまり、nが2でも5でも割り切れない整数ならば、
n*0, n*1 ,n*2, ....... ,n*99の下二桁はどれも異なる数になり、それゆえ1~99のどれかに必ず1つずつ当てはまる
という点です。
僕が魅力を感じたのは、nに1~99という相当な数を1個ずつ掛けていったら、1組ぐらい下二桁が同じ数字が出てもいいものだ、と感じるのに、全くカブることがない所です。
(まぁ試験に出たら100%解ける自信のない問題だけどもw)
というわけで、最初は食わず嫌いだったけど、噛んでるうちに美味しさが分かった問題の一つでした。