Cod sursa(job #628360)

Utilizator blk.irineluIrina Ursateanu blk.irinelu Data 1 noiembrie 2011 10:56:49
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include<stdio.h>

FILE *f,*g;

fstream f("lgput.in",ios::in);
fstream g("lgput.out",ios::out);

long long n,p;

long long lgput(long long n,long long p)
{
	if(p==0) return 1;
	else
		if(p%2==0) return lgput(n,p/2)*lgput(n,p/2);
	    else  return n*lgput(n-1,p/2)*lgput(n-1,p/2);
}			

int main()
{
	f=fopen("lgput.in","r");
	g=fopen("lgput.out","w");
	f>>n>>p;
	g<<lgput(n,p);
	fclose(f);
	fclose(g);
	return 0;
}