Cod sursa(job #1525249)

Utilizator HorridSaracin Mihnea Horrid Data 14 noiembrie 2015 21:28:41
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator c Status done
Runda Arhiva educationala Marime 0.54 kb
#include <stdio.h>
#include <stdlib.h>
const int mod=1999999973;
FILE *f,*g;


long long   exp(int x,int i)
{
    if(i==0)    return  1;
   else if (i==1)       return x;
         if(i%2==0)    return  exp(x*x,i/2);
            else if(i%2==1)   return x*exp(x*x,(i-1)/2);



}

int main()
{
    int n,p;
    long long z;

    f=fopen("lgput.in","r");
    g=fopen("lgput.out","w");
    fscanf(f,"%d",&n);
      fscanf(f,"%d",&p);
      z=exp(n,p);
   fprintf(g,"%lld",z%mod);
    fclose(f);
    fclose(g);

    return 0;
}