Pagini recente » Cod sursa (job #2686120) | Cod sursa (job #3213747) | Cod sursa (job #2973506) | Cod sursa (job #1166383) | Cod sursa (job #396409)
Cod sursa(job #396409)
#include <stdio.h>
#define MD 1999999973
FILE *fin,*fout;
long long n,p;
long long powerzor (long long n, long long p)
{
if (p == 0) return 1;
long long bit, aux;
bit = p&1;
if (bit == 0)
{
aux = (powerzor(n,p>>1)) % MD;
return ( (aux * aux) % MD );
}
aux = powerzor(n, (p-1)>>1) % MD;
return ( ( ( (n * aux) % MD ) * aux ) % MD );
}
int main()
{long long rez;
fin = fopen ("lgput.in","rt");
fout = fopen ("lgput.out","wt");
fscanf(fin,"%lld %lld\n",&n,&p);
rez = powerzor(n,p);
fprintf(fout,"%lld\n",rez);
fclose(fin);
fclose(fout);
return 0;
}