快速幂取余

Star英

关注

阅读 68

2022-01-15

基础公式:ab mod c = (a mod c)c mod c

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
void outans(ll a,ll b,ll c){
	ll ans=1;
	while(b){
		if(b%2==1)
			ans=(ans*a)%c;
		b/=2;
		a=(a*a)%c;
	}
	cout<<ans<<"\n";
}
int main(){
	ll a,b,c;
	cin>>a>>b>>c;
	outans(a,b,c);
	return 0;
}

时间复杂度:logn

原文链接https://www.jb51.net/article/54947.htm

精彩评论(0)

0 0 举报