大白书上说的是模运算。。而且给出了递归版的代码。。我觉得还是非递归的好。。而且加上了位运算,速度更快。下面是快速幂取模模板。
模板:
LL quickpow(LL n, LL m, int mod) { LL ans=1; while(m>0) { if(m&1) ans=ans*n%mod; m=m >> 1; n=n*n%mod; } return ans; }
练习题目:
快速幂取模总结
时间: 2024-10-14 00:42:39
大白书上说的是模运算。。而且给出了递归版的代码。。我觉得还是非递归的好。。而且加上了位运算,速度更快。下面是快速幂取模模板。
模板:
LL quickpow(LL n, LL m, int mod) { LL ans=1; while(m>0) { if(m&1) ans=ans*n%mod; m=m >> 1; n=n*n%mod; } return ans; }
练习题目:
快速幂取模总结