Mai intai trebuie sa te autentifici.
Cod sursa(job #149557)
| Utilizator | Data | 5 martie 2008 20:54:20 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.46 kb |
#include <stdio.h>
int main()
{FILE *fin,*fout;
long long int a,n,putere;
fin=fopen("lgput.in","r");
fscanf(fin,"%lld %lld",&a,&n);
fclose(fin);
putere=1;
while (n)
{if (n%2) putere*=a;
if (putere>=1999999973) putere=putere%1999999973;
n=n/2;
a=a*a;
if (a>=1999999973) a=a%1999999973;
}
fout=fopen("lgput.out","w");
fprintf(fout,"%lld",putere);
fclose(fout);
return 0;
}
