算法模板_快速幂

%mod, 时间复杂度O(logk)

long long fastpow(long long b,long long p,long long mod)
{
    long long res = 1;//存结果
    while(p > 0)
    {
        if(p & 1)//相当于 p % 2 == 1,若是奇数则抽一个出来
            res = b * res % mod;//抽一个幂出来就是乘一个底数
        p >>= 1;//等价于除等于2
        b = b * b % mod;
    }
    return res;
}
全部评论

相关推荐

安静的鲸鱼offer...:神仙级别hr,可遇不可求,甚至他可能也是突然有感而发。只能说遇上是件幸事。
秋招开始捡漏了吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务