カタツムリ君が n 回目に辺を伝って移動した時に X からの距離が 1,2,3,4 の頂点にいる場合の数をそれぞれ,an,bn,cn,dn とすると,求める場合の数は d9999 である.また,以下の漸化式が成り立つ.
an+1=bn,bn+1=2an+bn+cn,cn+1=bn+cn+2dn,dn+1=cn
ここで,sn=an+dn,tn=an−dn とすれば,d9999=2s9999−t9999 であるから,s9999 と t9999 を 5003 で割った余りを求めればよい.以下では,合同式は全て 5003 を法として考える.
s9999 を 5003 で割った余り
s1=3,s2=0,sn=bn−1+cn−1=2(bn−2+cn−2)+2(an−2+dn−2)=2sn−1+2sn−2
である.ここで,奇素数 p と整数 a に対し (pa) をLegendre記号とすると,平方剰余の相互法則より
(50033)=(35003)(−1)25003−1⋅23−1=1
であるので,r2≡3 なる整数 r が存在する.このとき,
sn≡2r((1+r)(1−r)n−1−(1−r)(1+r)n−1)
であることが確認できる.従って,
s9999≡2r((1+r)(1−r)9998−(1−r)(1+r)9998)≡2r((1−r)61+r−(1+r)61−r)=2(1−r2)6r((1+r)7−(1−r)7)=(1−r2)6k=1∑47C2k−1r2k≡(−2)6k=1∑47C2k−13k≡8123
である.もしくは,s9999≡s−5 であるから,漸化式を逆順に辿ることでも同様の結果を得られる.
t9999 を 5003 で割った余り
tn=bn−1−cn−1=(2an−2+bn−2+cn−2)−(bn−2+cn−2+2dn−2)=2(an−2−dn−2)
である.また,a1−d1=3 であるから,
a9999−d9999=3×24999≡3×2−3≡83
である.
以上より,求める答えは d9999≡21(8123−83)≡215≡2509 である.
解説YouTubeが存在しません.