快速幂
时间复杂度 log k
题目
#include<iostream>
using namespace std;
typedef long long LL;
LL qs(int a,int b,int mod)
{
long long res=1;
while(b)
{
if(b&1) res=res*a%mod;
b>>=1;
a=(long long) a*a%mod;
}
return res;
}
int main()
{
int n;
cin>>n;
while(n--)
{
int a,b,m;
cin>>a>>b>>m;
long long ans= qs(a,b,m);
cout<<ans<<endl;
}
return 0;
}