Cod sursa(job #465301)
#include <stdio.h>
using namespace std;
#define MOD 1999999973
long N, P;
long long ridicare_la_putere (long n, long p)
{
long long rez;
if (p == 0)
return 1;
if (p % 2 == 1)
return (ridicare_la_putere(n*ridicare_la_putere(n, p - 1)) % MOD);
else
rez = ridicare_la_putere(n, p / 2) % MOD;
return rez * rez % MOD;
}
int main ()
{
FILE *f = fopen ("lgput.in","r");
FILE *g = fopen ("lgput.out","w");
fscanf (f,"%ld %ld", &N, &P);
fprintf (g,"%lld", ridicare_la_putere(N,P));
fclose(g);
fclose(f);
return 0;
}