Pagini recente » Diferente pentru problema/fft2d intre reviziile 6 si 26 | Borderou de evaluare (job #2793811) | Borderou de evaluare (job #1417681) | Cod sursa (job #2016897) | Cod sursa (job #1343592)
#include <stdio.h>
using namespace std;
FILE*in = fopen("lgput.in", "r");
FILE*out = fopen("lgput.out", "w");
int putere ( int x, int n, int p ) {
x = n % 1999999973;
if ( p == 0 ) return 1;
else if ( p == 1 ) return n;
else if ( p % 2 == 0 ) return putere( x, x*n, p/2 );
else return putere( x, x*n*n, ( p - 1 )/2 );
}
int main() {
int r, a, b, x;
fscanf(in, "%d%d", &a, &b);
x = a % 1999999973;
r = putere( x, a, b);
fprintf(out, "%d", r);
return 0;
}