Cod sursa(job #1314636)

Utilizator alexandrionUNIBUC Marcu Alexandru alexandrion Data 12 ianuarie 2015 02:49:04
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator c Status done
Runda Arhiva educationala Marime 0.37 kb
#include <stdio.h>
#include <stdlib.h>
#define nr 1999999973
FILE *f,*g;
long long putere (long long a , long p)
{
if(a%2)
 return putere(a*a%nr,p/2+1)%nr;
 else
 return a%nr*putere(a*a%nr,(p-1)/2)%nr;
}
int main()
{ f=fopen("lgput.in","r");
g=fopen("lgput.out","w");
long long n , p ;
fscanf(f,"%lld %lld",&n,&p);
fprintf(g,"%lld",putere(n,p)%nr);
return 0;

}