// UVa 374 - Big Mod
#include <iostream>
using namespace std;
#define datatype unsigned long long
datatype b, p, m;
datatype calc(datatype p) {
if (p == 0)
return 1;
else
return (((calc(p / 2) * calc(p / 2)) % m) * (p % 2 == 1 ? b : 1)) % m;
}
int main() {
while (cin >> b >> p >> m) {
b = b % m;
cout << calc(p) << endl;
}
return 0;
}
No comments:
Post a Comment