快速幂模板

#include<cstdio>
int quickpow(int n,int m,int mod)
{
int ans=1,base=n;
while(m)
{
if(m&1)
{
ans=(base*ans)%mod;
}
base=(base*base)%mod;
m>>=1;
printf("ans=%d base=%d m=%d ",ans,base,m);
}
return ans;
}


int main()
{
int n,m,mod;
while(~scanf("%d%d%d",&n,&m,&mod))
{
printf("%d ",quickpow(n,m,mod));
}
return 0;
}
原文地址:https://www.cnblogs.com/kingjordan/p/12027154.html