我这个快速幂哪一步有问题吗?36分,望大佬指点
查看原帖
我这个快速幂哪一步有问题吗?36分,望大佬指点
366547
CY666楼主2020/12/30 23:14
#include <bits/stdc++.h>
using namespace std;
int quickPower(int a, int b,int c)
{
	long long ans = 1, base = a;
	while(b > 0)
    {
		if(b & 1)
			ans *= base%c;
		
        base *= base%c;
		b >>= 1;
	}
	return ans;
}
int main(){
	long long i,j,k,m,n,b,p;
	scanf("%lld%lld%lld",&b,&m,&p);
	printf("%lld^%lld mod %lld=",b,m,p);
	printf("%lld",quickPower(b,m,p)%p);
	return 0;
}
2020/12/30 23:14
加载中...