Cod sursa(job #657543)
Utilizator | Data | 6 ianuarie 2012 18:51:59 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 0 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.33 kb |
#include <stdio.h>
#include <stdlib.h>
int main()
{
long long n,p,k,i;
freopen("lgput.in","r",stdin);
freopen("lgput.out","w",stdout);
scanf("%lld%lld",n,p);
k=1;
for (i=0; (1<<i)<=p; i++)
{
if (((1<<i)&p)>0) k=(k*n)%1999999973;
n=(n*n)%1999999973;
}
printf("%lld",k);
}