■剰余の計算(その14)

[Q]40^40 mod 47,すなわち,40^40を47で割ったときの余りを求めよ.

===================================

 反復2倍乗法を応用した反復平方による累乗法を用いると,

  40=2^3+2^5

  40^40=40^(2^3+2^5)=40^(2^3)・40^(2^5)

  40^2=1600=2

  40^(2^2)=(40^2)^2=4

  40^(2^3)=((31^2)^2)^2)=16

  40^(2^4)=(((31^2)^2)^2)^2)=256=21

  40^(2^5)=((((31^2)^2)^2)^2)^2)=441=18

  40^40=40^(2^3+2^5)=40^(2^3)・40^(2^5)=16・18=288=6

===================================