Pagini recente » Cod sursa (job #3216348) | Cod sursa (job #2721934) | Cod sursa (job #1692205) | Cod sursa (job #26590) | Cod sursa (job #2281183)
#include <iostream>
using namespace std;
int N, P;
const long long R = 1999999973;
typedef long long ll;
ll logp(long long n, long long p) {
if (p == 0) {
return 1;
}
if (p == 1) {
return n % R;
}
if (p & 1) {
return ((n % R) * logp(((n % R) * (n % R)) % R, (p-1) / 2)) % R;
}
return logp(((n % R) * (n % R)) % R, p / 2) % R;
}
int main() {
freopen("lgput.in", "r", stdin);
freopen("lgput.out", "w", stdout);
scanf("%d %d", &N, &P);
printf("%lld", logp(N, P));
return 0;
}