Pagini recente » Cod sursa (job #1705579) | Cod sursa (job #1227608) | Cod sursa (job #3187301) | Cod sursa (job #729692) | Cod sursa (job #445500)
Cod sursa(job #445500)
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
long long putere(int n,int p)
{
/*if (p==0) return (long long)1;
if (p==1) return (long long)n;
if (p%2==0) return putere(n,p/2)*putere(n,p/2);
else return putere(n,p/2)*putere(n,p/2)*n;*/
long long r=1;
while (p>0)
{
if (p%2==1)
{
r*=n;
p-=1;
}
n*=n;
p/=2;
}
return r;
}
int main()
{
FILE *in=fopen("lgput.in","r");
FILE *out=fopen("lgput.out","w");
int n,p;
long long t=1999999973;
fscanf(in,"%d %d",&n,&p);
fprintf(out,"%lld",putere(n,p)%t);
fclose(in); fclose(out);
return 0;
}