Pagini recente » Cod sursa (job #2965706) | Cod sursa (job #3285410) | Cod sursa (job #1303610) | Cod sursa (job #2318070) | Cod sursa (job #1842699)
#include<stdio.h>
#include<cstdlib>
#define mod 1999999973
#pragma warning(disable:4996)
using namespace std;
long long int exp_by_squaring(long long int n, long long int p) {
if (p == 0) return 1;
else if (p == 1) return n;
else if (p % 2 == 0) return (long long int) exp_by_squaring(n*n, p / 2);
else return (long long int) n*exp_by_squaring(n*n, (p - 1) / 2);
}
int main() {
freopen("lgput.in", "r", stdin);
freopen("lgput.out", "w", stdout);
long long int n, p;
scanf("%lld %lld", &n, &p);
printf("%lld", exp_by_squaring(n, p) % mod);
//system("Pause");
return 0;
}