Cod sursa(job #454088)
Utilizator | Data | 11 mai 2010 18:05:50 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.35 kb |
#include <stdio.h>
FILE*f=fopen("lgput.in","r");
FILE*g=fopen("lgput.out","w");
long long x,n,p;
int main() {
fscanf(f,"%lld%lld",&x,&n);
p=1;
while(n!=0){
if(n%2==1)
p=((p%1999999973)*(x%1999999973))%1999999973;
x=((x%1999999973)*(x%1999999973))%1999999973;
n/=2;
}
fprintf(g,"%lld",p);
fclose(g);
fclose(f);
return 0;
}