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