Pagini recente » Cod sursa (job #1614989) | Cod sursa (job #951487) | Cod sursa (job #2865781) | Cod sursa (job #1909160) | Cod sursa (job #3227185)
#include <stdio.h>
long fast_exp(int x, int n) {
if(n < 0) {
x = 1 / x;
n = -n;
}
if(n == 0) return 1;
int y = 1;
while(n > 1) {
if(n % 2 != 0) {
y = x * y;
n--;
}
x *= x;
n /= 2;
}
return x * y;
}
int main() {
long N, P;
FILE *in = fopen("1gput.in", "r");
FILE *out = fopen("1gput.out", "w");
fscanf(in, "%ld %ld", &N, &P);
printf("%ld %ld", N, P);
fclose(in);
fprintf(out, "%ld", fast_exp(N, P));
fclose(out);
return 0;
}