Cod sursa(job #167511)
Utilizator | Data | 29 martie 2008 17:52:26 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.29 kb |
#include<stdio.h>
long long x,n,r;
FILE *in,*out;
int main(){
in=fopen("lgput.in","rt");
out=fopen("lgput.out","wt");
fscanf(in,"%d%d",&x,&n);
r=1;
do{
if(n&1)
n--,r=(r*x)%1999999973;
x=(x*x)%1999999973;
n=n>>1;
}while(n-1);
fprintf(out,"%ld",(x*r)%1999999973);
return 0;
}