快速幂及例题

Posted frankyu-

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了快速幂及例题相关的知识,希望对你有一定的参考价值。

快速幂:

例:a^11=a^(2^0)*a^(2^1)*a^(2^3)

 

 11的二进制是1011,有1为第一位,第二位,第四位,它们的权分别为0,1,3。所以可以把11拆分为2^0+2^1+2^3。

利用这个思想实现快速幂函数(c++) ULL代表unsigned long long 

ULL quickpow(ULL a,ULL b){
    ULL res=1;
    for(;b;b>>=1){
        if(b&1)
            res*=a;
        a*=a;
    }
    return res;
}

 

以上是关于快速幂及例题的主要内容,如果未能解决你的问题,请参考以下文章

二进制快速幂及矩阵快速幂

[数论+模板] 快速幂及快速幂求逆元算法模板(模板)

51Nod-1046 A^B Mod C (快速幂,了解快速幂及对 A^B Mod C的求解)

c#代码片段快速构建代码

前端开发工具vscode如何快速生成代码片段

前端开发工具vscode如何快速生成代码片段