快速幂取模
来源:互联网 发布:好看的网络剧霸道总裁 编辑:程序博客网 时间:2024/04/30 23:27
快速幂算法
代码:
// m^n % kLL quickpow(LL m, LL n, LL k){ LL ans = 1; while(n > 0) { if(n & 1) ans = (ans*m)%k; n = n >> 1 ; m = (m*m)%k; } return ans;}
借鉴:
比如a的b次方对c求模
我们可以把b 化为二进制形式看哪一位有1
比如b=10101则 a^b=a^(10000)*a^(100)*a^(1)
//a^b mod c=(a mod c)^b mod cLL binarypowmod(LL a, LL b, LL c){ LL t,s; for(t=a,s=1; b; b>>=1,t*=t,t%=c) { if(b&1) { s*=t; s%=c; } } return s%c;}
1 0
- 快速幂,快速幂取模
- 快速幂 + 快速幂取模
- 快速幂 快速幂取模
- 快速幂 快速幂取模
- 【快速幂】【快速幂取模】
- 快速幂,快速幂取模,矩阵快速幂
- 快速幂取模
- 快速幂取模
- 快速幂取模
- 快速幂取模
- 快速幂取模
- 快速幂取模
- 快速幂取模
- 快速幂取模
- 快速幂取模
- 快速幂取模
- 快速幂取模
- 快速幂取模
- 【树状数组】[CodeForces - 341D]Iahub and Xors
- 0.0
- 安卓 dex 通用脱壳技术研究(四)
- USACO milking cows
- js之异常捕捉
- 快速幂取模
- java当中float以及double数据类型的掌握
- [LeetCode] Binary Tree Inorder Traversal
- 2015年作为一名Android需要知道的
- poj3259
- HTTP Status 500 -(struts2整合进spring2.5和hibernate3.3)
- 爱奇艺笔试编程题 (学习之旅)
- MMD_3b_StreamAlgorithms
- Ubuntu进入终端和root用户