Cod sursa(job #846247)

Utilizator test_13testing test_13 Data 1 ianuarie 2013 19:16:46
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.35 kb
#include <stdio.h>
#define Md 1999999973
long long n;
int p;

long long pow(int p)
{
	if(p>1)
	{
		long long r=pow(p/2);
		if(p%2)return r*r%Md*n%Md; else
			return r*r%Md;
	}
	return n;
}

int main()
{
	freopen("lgput.in","r",stdin);
	freopen("lgput.out","w",stdout);
		scanf("%lld %d",&n,&p);
		printf("%lld\n",pow(p));
	return 0;

}