描述
求 a 的 b 次方对 p 取模的值,其中 1≤a,b,p≤10^9
输入格式
三个用空格隔开的整数a,b和p。
输出格式
一个整数,表示a^b mod p的值。
1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef long long ll; 4 int a,b,p; 5 ll quipow(int a,int b) 6 { 7 ll ans=1%p; 8 while(b) 9 { 10 if(b&1)ans=1ll*ans*a%p; 11 b>>=1; 12 a=1ll*a*a%p; 13 } 14 return ans; 15 } 16 int main() 17 { 18 cin>>a>>b>>p; 19 cout<<quipow(a,b)<<endl; 20 return 0; 21 }