Cod sursa(job #1706224)
Utilizator | Data | 21 mai 2016 22:28:05 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.42 kb |
#include <stdio.h>
#include <stdlib.h>
#define MOD 1999999973
int main(){
FILE*fi,*fo;
fi=fopen("lgput.in","r");
fo=fopen("lgput.out","w");
long long a, n;
fscanf(fi,"%lld%lld", &a, &n);
long long p=1LL;
while(n>0){
if(n%2==1)
p=(p*a)%MOD;
a=(a*a)%MOD;
n/=2;
}
fprintf(fo,"%lld", p);
fclose(fi);
fclose(fo);
return 0;
}