已知底数a,指数b,取模值mo
求ans = ab % mo
普通算法 时间为 b
快速幂算法 时间为log2 b
int mi(int a,int b) { int ans=1; a%=mo; while (b) { if (b&1) ans=ans*a%mo; b>>=1; a=a*a%mo; } return ans; }
和矩阵的快速幂相同!!
已知底数a,指数b,取模值mo
求ans = ab % mo
普通算法 时间为 b
快速幂算法 时间为log2 b
int mi(int a,int b) { int ans=1; a%=mo; while (b) { if (b&1) ans=ans*a%mo; b>>=1; a=a*a%mo; } return ans; }
和矩阵的快速幂相同!!