Cod sursa(job #505112)
Utilizator | Data | 30 noiembrie 2010 19:49:07 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.33 kb |
#include <stdio.h>
int main () {
FILE *in,*out;
long long n,p,j=1,k;
in=fopen ("lgput.in","r"); out=fopen ("lgput.out","w");
fscanf (in,"%lld%lld",&n,&p);
k=n%1999999973;
while (p) {
if (p%2) j=(j*k)%1999999973;
k=(k*k)%1999999973;
p/=2;
}
fprintf (out,"%lld\n",j);
fclose (in); fclose (out);
return 0;
}