首页 > 代码库 > 快速幂
快速幂
一、递归版快速幂
int fastPow(int a, int x, int p) { if (x==0) { return 1%p; } int tmp=fastPow(a,x/2,p); tmp=(long long)tmp*tmp%p; if (x%2==1) { tmp=(long long)tmp*a%p; } return tmp; }
二、迭代版快速幂(常用)
int fastPow2(int a, int x, int p) { int s=1%p; for (;x;x>>=1) { if (x&1) { s=(long long)s*a%p; } a=(long long)a*a%p; } return s; }
快速幂
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。