Cod sursa(job #173333)
Utilizator | Data | 7 aprilie 2008 17:34:33 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.41 kb |
#include<stdio.h>
long n,p;
const long m=1999999973;
int power ()
{ int r=1;
for (p=p;p>0;p/=2)
{
if (p%2==1) r=(r*n)%m;
n=(n*n)%m;
}
return r;
}
int main ()
{ FILE*f=fopen("lgput.in","r");
FILE*g=fopen("lgput.out","w");
fscanf(f,"%ld%ld",&n,&p);
fprintf(g,"%d\n",power());
fcloseall();
return 0; }