與14- I. 剪繩子相比,多了取模。因爲最後結果以指數形式增加,可能會超int32 甚至int64,segmentfault
若只在最終結果求餘:所以須要逐步求餘,求餘具備結論以下:優化
(xy)%p = [(x%p)(y%p)]%p (x^a)%p = ((···(x%p)*x%p)····*x%p)
所以採用循環求餘的方法:每乘一次3,取一次模,最後return再取一次模。spa
官方:n=4沒有操做,能夠優化掉code
注意:get