Pagini recente » Cod sursa (job #2451590) | Cod sursa (job #1653709) | Cod sursa (job #1209197) | Cod sursa (job #1879686) | Cod sursa (job #2028970)
#include <stdio.h>
#include <vector>
#define NMAX 8
using namespace std;
long long n, p;
const long long N = 1999999973;
int ridicarea() {
if (p == 0)
return 1;
int y = 1;
while (p > 1) {
if (p % 2 == 0) {
n = (n * n) ;
p = p / 2;
} else {
y *= n;
n *= n;
p = (p - 1) / 2;
}
}
return n * y;
}
int main(int argc, char const *argv[])
{
freopen("lgput.in", "r", stdin);
freopen("lgput.out", "w", stdout);
scanf("%lld %lld\n", &n, &p);
int n_p = ridicarea();
printf("%lld\n", (n_p % N));
return 0;
}