#include
int mod(int a,int n,int m);
int main()
{
unsigned int a,b,m;
while(scanf("%d%d%d",&a,&b,&m)!=EOF)
printf("%d\n",mod(a,b,m));
return 0;
}
int mod(int a,int n,int m)
{
if(n==1) return a;
else
{
long long x;
x=mod(a,n/2,m);
x=(long long)x*x%m;
if(n%2==1) x=(long long)x*a%m;
return (int)x;
}
}
表示不知道第二个样例错哪了,有大神有很好的算法吗?