题目
答案
#include<iostream>
using namespace std;
int Pow(int a,int b)
{
int ans=1,base=a;
while(b)
{
if(b&1) ans=ans*base%1000;
base=base*base%1000;
b>>=1;
}
return ans;
}
int main()
{
int a,b;
cin>>a>>b;
printf("%03d",Pow(a,b));
}
快速幂讲解
可以参考我的这篇文章
还在用pow函数做幂运算相关的算法题?快速幂表示不服!