Cod sursa(job #1923147)
Utilizator | Coman Mara Stefania Mstar_Angel | Data | 10 martie 2017 21:02:21 |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#include<stdio.h>
#define MOD 1999999973
long long putlg(long long n, long long p){
long long k;
k = 1LL;
while (p > 0){
if (p%2 == 1)
k = (k*n)%MOD;
n = (n*n)%MOD;
p /= 2;
}
return k%MOD;
}
int main (){
FILE *in, *out;
in = fopen ("lgput.in","r");
out = fopen ("lgput.out","w");
long long n,p;
long long k;
fscanf(in,"%lld%lld",&n,&p);
k = putlg (n,p);
fprintf (out,"%lld",k);
fclose (in);
fclose (out);
return 0;
}