■剰余の計算(その11)
[Q]30^30 mod 47,すなわち,30^30を47で割ったときの余りを求めよ.
===================================
反復2倍乗法を応用した反復平方による累乗法を用いると,
30=2+2^2+2^3+2^4
30^30=30^(2+2^2+2^3+2^4)=30~2・30^(2^2)・30^(2^3)・30^(2^4)
30^2=900=7
30^(2^2)=(30^2)^2=49=2
30^(2^3)=((30^2)^2)^2)=4
30^(2^4)=(((30^2)^2)^2)^2)=16
30^30=30^(2+2^2+2^3+2^4)=30~2・30^(2^2)・30^(2^3)・30^(2^4)=896=3
===================================