Cod sursa(job #416604)
| Utilizator | Data | 13 martie 2010 00:03:13 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 30 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.39 kb |
#include<stdio.h>
FILE *f,*g;
long long x,n,z;
inline long long lgput(long long x,long long n)
{ if(n==0) return 1;
else if(n%2) { z=lgput(x,n/2); return ((z*z*x)%1999999973); }
else { z=lgput(x,n/2); return ((z*z)%1999999973); }
}
int main()
{ f=fopen("lgput.in","r"); g=fopen("lgput.out","w");
fscanf(f,"%lld%lld",&x,&n);
fprintf(g,"%lld",lgput(x,n));
fclose(g);
return 0;
}
