快速幂模板

int quick(int a,int b,int c)//¿ìËÙÃÝ a^b mod c
{
    long long ans=1;
    while(b)
    {
        if(b&1)ans=ans*a%c;
        a=a*a%c;
        b>>=1;
    }
    return ans;
}
View Code

 原理: n^k = (n ^ (k /2) )*(n^(k/2))然后你只要算一半接着乘起来就行

posted @ 2016-11-13 13:42  pandaB  阅读(94)  评论(0编辑  收藏  举报