a^b快速幂
两种写法,见代码:
#include<iostream>
using namespace std;
int main()
{
int a, b, p;
cin >> a >> b >> p;
int ans = 1 % p;
/*
while (b)
{
if(b&1)
ans = ans * 1ll * a % p;
a = a * 1ll * a % p;
b >>= 1;
}
*/
for (; b; b >>= 1)
{
if(b&1) ans = ans * 1ll * a % p;
a = a * 1ll * a % p;
}
cout << ans;
}