Cod sursa(job #2087389)
Utilizator | Data | 13 decembrie 2017 16:18:17 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 10 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.41 kb |
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *f1 = fopen("lgput.in","r"),*f2=fopen("lgput.out","w");
int x=0,i;
unsigned long long a,r,b;
fscanf(f1,"%llu%llu",&a,&b);
a=a%1999999973;
while(b%2==0){
x++;
b/=2;
}
for(i=0;i<x;i++){
a=a*a;
}
r=a;
for(i=1;i<b;i++){
r=r*a;
}
fprintf(f2,"%llu",r%1999999973);
return 0;
}