快速幂

来源:互联网 发布:pc解压软件下载 编辑:程序博客网 时间:2024/06/14 01:57
下面是 m^n  % k 的快速幂:
// m^n % k
int quickpow(int m,int n,int k)
{
    int b = 1;
    while (n > 0)
    {
          if (n & 1)
             b = (b*m)%k;
          n = n >> 1 ;
          m = (m*m)%k;
    }
    return b;
m^n
int f(int a,int n)
{
    int r = 1 ;
    while(n>0)
    {    
      if(n & 1)
            r *= a;
        a =a*a;
        n >>= 1;
    }
    return r;


}

0 0