Description
输入3个数a,b,c,求a ^ b mod c = ?
Input
多组数据:每组数据,三个数a,b,c。
Output
对于每一组数据,输出一个数,即a ^ b mod c的答案。
Sample Input
5 10 9
Sample output
4
#include<cstdio>
#include<iostream>
using namespace std;
#define ll long long
ll qsm(ll a,ll b,ll c)
{
ll sum=
1;
a%=
c;
while(b)
{
if(b&
1)
{
sum=(sum*a)%
c;
}
b/=
2;
a=(a*a)%
c;
}
return sum;
}
int main()
{
ll a,b,c,d;
while(~scanf(
"%lld%lld%lld",&a,&b,&
c))
{
d=
qsm(a,b,c);
printf("%lld\n",d);
}
return 0;
}
转载于:https://www.cnblogs.com/RootVount/p/10022629.html
相关资源:JAVA上百实例源码以及开源项目