88分求助
查看原帖
88分求助
565698
czx2021楼主2023/2/11 23:33
#include<bits/stdc++.h>
#define int long long
using namespace std;
int a,n,p;
int pow(int a,int n){
	if(n==0||a==1)return 1;
	if(n==1)return a;
	else{
		int c=pow(a,n/2);
		if(n%2==0)return (c%p)*(c%p)%p;
		else return (c%p)*(c%p)*(a%p)%p;
	}
}
signed main(){
	cin>>a>>n>>p;
    int t=pow(a,n);
    if(t>0)cout<<a<<"^"<<n<<" "<<"mod"<<" "<<p<<"="<<t<<endl;
    else cout<<a<<"^"<<n<<" "<<"mod"<<" "<<p<<"="<<p+t<<endl;
	return 0;
}
2023/2/11 23:33
加载中...