Cod sursa(job #229664)
Utilizator | Data | 10 decembrie 2008 23:14:59 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.44 kb |
#include <stdio.h>
int main()
{
long long a,n,p,m,d;
FILE *f1,*f2;
f1=fopen("lgput.in","r");
f2=fopen("lgput.out","w");
fscanf(f1,"%lld %lld",&a,&n);
m=1999999973;
p=1;
while(n!=0){
if(n%2!=0)
p=p*a%m;
a=a*a%m;
n=n/2;
}
d=p%m;
fprintf(f2,"%lld",d);
fclose(f1);
fclose(f2);
return 0;
}