数论——快速幂(C++)

Posted

tags:

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

源代码:

#include<cstdio>
int m,n,q,ans=1;
int main()
{
scanf("%d%d%d",&m,&n,&q); //m的n次方,对q的取余运算。
m%=q; //为避免m*m率先溢出,首当其冲,对其进行取余运算。
while (n)
{
if (n%2)
ans=ans*m%q;
n/=2;
m=m*m%q;
}
printf("%d",ans);
return 0;
}

以上是关于数论——快速幂(C++)的主要内容,如果未能解决你的问题,请参考以下文章

数论--快速幂,矩阵快速幂

总结——数论:快速幂

数论-快速幂

BZOJ 1409 Password 数论(扩展欧拉+矩阵快速幂+快速幂)

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

数论—快速幂算法