Pagini recente » Cod sursa (job #1904713) | Cod sursa (job #453443) | Cod sursa (job #2571576) | Cod sursa (job #948630) | Cod sursa (job #3232640)
#include <stdio.h>
#include <stdlib.h>
#define MOD 1999999973
#define FILE_IN "lgput.in"
#define FILE_OUT "lgput.out"
long long int exponentiate(long long int x, long long int n) {
if(n == 0) {
return 1;
}
if(n % 2 == 1) {
return (x * exponentiate((x * x) % MOD, (n - 1) / 2)) % MOD;
}
else {
return (exponentiate((x * x) % MOD, n / 2)) % MOD;
}
}
int main()
{
FILE *fileIn = fopen(FILE_IN, "r"),
*fileOut = fopen(FILE_OUT, "w");
long long int n, p;
fscanf(fileIn, "%lld%lld", &n, &p);
long long int result = exponentiate(n, p);
fprintf(fileOut, "%lld\n", result);
fclose(fileIn);
fclose(fileOut);
return 0;
}