18 lines
390 B
C++
18 lines
390 B
C++
// 89
|
|
#include <bits/stdc++.h>
|
|
using namespace std;
|
|
long long a, b, p;
|
|
long long pow(long long a, long long b, long long p)
|
|
{
|
|
if (b == 0)
|
|
return 1;
|
|
long long half = pow(a, b >> 1, p) % p;
|
|
return (half * half % p * ((b % 2) ? a : 1)) % p;
|
|
}
|
|
int main()
|
|
{
|
|
long long a, b, p;
|
|
scanf("%lld%lld%lld", &a, &b, &p);
|
|
printf("%lld\n", pow(a, b, p) % p);
|
|
return 0;
|
|
} |