首页 > 其他 > 详细

快速幂

时间:2017-03-14 16:32:07      阅读:169      评论:0      收藏:0      [点我收藏+]
long long quickmod(long long a,long long b,long long m)  
{  
    long long ans = 1;  
    while(b)//用一个循环从右到左便利b的所有二进制位  
    {  
        if(b&1)//判断此时b[i]的二进制位是否为1  
        {  
            ans = (ans*a)%m;//乘到结果上,这里a是a^(2^i)%m  
            b--;//把该为变0  
        }  
        b/=2;  
        a = a*a%m;  
    }  
    return ans;  
}  

  

快速幂

原文:http://www.cnblogs.com/Annetree/p/6549171.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!