Cod sursa(job #632238)
Utilizator | Data | 10 noiembrie 2011 17:31:31 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.37 kb |
#include <stdio.h>
FILE *f=fopen("lgput.in","r"),*g=fopen("lgput.out","w");
long int a,b,k=1999999973;
void citire(){
long int r;
fscanf(f,"%ld %ld",&a,&b);
r=1;
while(b!=0){
if(b%2==1){
r=(r*a)%k;
}
a=(a*a)%k;
b=b/2;
}
fprintf(g,"%ld",r);
}
int main()
{
citire();
return 0;
}