Cod sursa(job #796319)

Utilizator bulbulicaAlexandrescu Cristian bulbulica Data 11 octombrie 2012 00:15:07
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.36 kb
#include <fstream>
using namespace std;
ifstream f("lgput.in");
ofstream g("lgput.out");

const int m = 1999999973;
long long n,p;

long long po(long long p)
{
	if ( p==1 )
		return n%m;
	else
	{
		long long x=po(p/2);
		if ( p%2 == 0)
			return (x*x)%m;
		else
			return (((x*x)%m)*n)%m;
	}
}
int main ()
{
	f>>n>>p;
	g<<(po(p)%m);
	return 0;
}