2025-08-05 13:39:39
发布于:浙江
#include<bits/stdc++.h>
using namespace std;
int main(){
long long a,b,p;
cin>>a>>b>>p;
long long a1=a,b1=b,p1=p;
long long ans=1;
while(b>0){
if(b%2==1){
ans*=a;
ans%=p;
}
a*=a;
a%=p;
b/=2;
}
cout<<a1<<"^"<<b1<<" mod "<<p1<<"="<<ans;
return 0;
}
全部评论 1
A49361.逆元
#include<bits/stdc++.h> using namespace std; long long quick_sort(long long a,long long b,long long p){ long long ans=1; while(b>0){ if(b%2==1){ ans*=a; ans%=p; } a*=a; a%=p; b/=2; } return ans; } int main(){ long long n,p; cin>>n>>p; for(long long i=1;i<=n;++i){ cout<<quick_sort(i,p-2,p)<<" "; } return 0; }
2025-08-05 来自 浙江
0
有帮助,赞一个