Cod sursa(job #529036)

Utilizator thesilverhand13FII Florea Toma Eduard thesilverhand13 Data 4 februarie 2011 01:11:16
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include<fstream>
#define modulo 1999999973
using namespace std;

ifstream f("lgput.in");
ofstream g("lgput.out");

long long  n,p;

int calculeaza(long long n,long long p)
{
	long long fact=n,sol=1;
	while(p)
	{
		if(p%2!=0)
			sol=((sol%modulo)*(fact%modulo))%modulo;
		fact=((fact%modulo)*(fact%modulo))%modulo;
		p=(p%modulo/2)%modulo;
	}
	return sol;
	
}

int main()
{
	f>>n>>p;
	g<<calculeaza(n,p);
	
	return 0;
}