Cod sursa(job #1314630)

Utilizator alexandrionUNIBUC Marcu Alexandru alexandrion Data 12 ianuarie 2015 02:37:50
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator c Status done
Runda Arhiva educationala Marime 0.37 kb
#include <stdio.h>
#include <stdlib.h>
FILE *f,*g;
long long putere (int a , int p)
{ if(p==0)
return 0;

if(p==1)
return a;

if(a%2)
 return putere(a,p/2+1)*putere(a,p/2);
 return putere(a,p/2)*putere(a,p/2);
}
int main()
{ f=fopen("lgput.in","r");
g=fopen("lgput.out","w");
int n , p ;
fscanf(f,"%d %d",&n,&p);
fprintf(g,"%lld",putere(n,p));
return 0;

}