快速幂模板

include

using namespace std;
typedef long long ll;
//快速幂是求a^i%n;
//利用a^i==(a^(i/2))^2*a^(i%2);
ll pow_mod(ll a,ll i,ll n)
{
if(i==0)
return 1%n;
ll temp=pow_mod(a,i>>1,n);
temp=temp*temp%n;
if(i&1)
temp=(ll)temp*a%n;
return temp;
}
int main()
{
ll a,i;
while(cin>>a>>i)
{
cout<

你可能感兴趣的:(快速幂模板)