Pagini recente » Cod sursa (job #1434501) | Cod sursa (job #1904649) | Cod sursa (job #1601365) | Cod sursa (job #1952573) | Cod sursa (job #623032)
Cod sursa(job #623032)
#include <stdio.h>
#include <math.h>
#define INPUT "lgput.in"
#define OUTPUT "lgput.out"
#define MAX 1999999973
#define SUCCESS 0
double lgput(double n, int p) {
if (p == 1) {
return n;
} else {
double r = lgput(n, p / 2);
r = fmod(r * r, MAX);
if (p % 2)
r = fmod(r * n, MAX);
return r;
}
}
int main() {
freopen(INPUT, "r", stdin);
freopen(OUTPUT, "w", stdout);
double n;
int p;
scanf("%lf %d\n", &n, &p);
printf("%.0lf\n", lgput(n, p));
fclose(stdin);
fclose(stdout);
return SUCCESS;
}