快速幂取模运算

Posted DaWeiGuo

tags:

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

落谷p1226
理论依据

#include<iostream>
#include<cstdio>
using namespace std;
long long fun(long long a,long long b,long long c){
    long long An = 1;
    long long T = a % c;
    while(b!=0){
        if(b&1){
            An = (An * T)%c;
        }
        b >>= 1;
        T = (T*T)%c;
    }
    return An;
}
int main(){
    long long a,b,c;
    cin >> a >> b >> c;
    // cout << fun(a,b,c);
    printf("%lld^%lld mod %lld=%lld",a,b,c,fun(a,b,c));
}
“热爱是所有的理由和答案”。

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

快速幂取模之引用详解

快速幂取模算法

关于快速幂取模

快速幂取模和快乘取模

ACwing89 a^b 快速幂取模

牛客-开心的涂刷——数学分析+快速幂取模问题