Cod sursa(job #346457)

Utilizator MKLOLDragos Ristache MKLOL Data 7 septembrie 2009 21:18:45
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.37 kb
#include<stdio.h>
long long N,M,o,z=1999999973;
long long p(long long x,long long y)
{
long long w;
if(y==1)
return x;
else if(y%2==0)
{
w=p(x,y/2);

return (w*w)%z;
}
else
{
w=p(x,y-1)%z;
return (w*x)%z;
}
}


int main()
{
freopen("lgput.in","r",stdin);
freopen("lgput.out","w",stdout);
scanf("%lld %lld",&N,&M);
N=N%z;
o=p(N,M);
printf("%lld",o);
}