快快快速幂
快速幂
思路
如果power为偶数则可以将底数直接平方来将power减半从而减少次数
#include<iostream>
using namespace std;
#define ll long long
ll power(ll base,ll power)
{
ll result=1;
while(power>0)
{
if (power&1)
result=result*base%1000;
power>>=1;
base=(base*base)%1000;
}
return result;
}
int main()
{
ll a,b,c;
cin>>a>>b;
c=power(a,b);
cout<<c<<endl;
return 0;
}

浙公网安备 33010602011771号