快速幂 C++
#include
using namespace std;
//一般需要将答案膜上一个mod
const int mod = 100003;
long long qmi(int a, int n)
{
long long res = 1;
while(n)//只要n不等于0就一直执行 *** 作
{ //判断最后一位是不是1
if(n & 1) res = res * a;
//每一个位权都是前一个的平方
a = a * a;
//舍去最后一位
n >>= 1;
}
return res;
}
int main()
{
int a, n;
cin >> a >> n;
cout << qmi(a, n);
return 0;
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)