解题思路:由于效率问题,每做一次乘机求一次余数会不过。可以将底数成倍增长求余数。
源码附上:
#include <iostream>
using namespace std;
int main()
{
long long A,B,C;
cin>>A>>B>>C;
A%=C;
long long ans=1;
while(B>0)
{
if(B%2==1)
{
ans*=A;
}
B/=2;
A=(A*A)%C;
}
cout<<ans<<endl;
return 0;
}
本文介绍了一种高效的快速幂取模算法,通过成倍增长底数并求余数的方法,解决了大数乘法中效率问题。算法使用C++实现,通过实例展示了如何在大数运算中快速计算A的B次方模C。
1996

被折叠的 条评论
为什么被折叠?



