快速幂

已知底数a,指数b,取模值mo

求ans = a% 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;
 }

  

和矩阵的快速幂相同!!

原文地址:https://www.cnblogs.com/bxd123/p/10346864.html