Cod sursa(job #161555)

Utilizator Anamaria20Cotirlea Anamaria Anamaria20 Data 18 martie 2008 14:59:08
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include <stdio.h>

#define imp 1999999973

FILE* f;
FILE* s;

int main()
{
	f=fopen ("lgput.in","r");
	s=fopen ("lgput.out","w");

	long long int n;
	long long int p;
	fscanf (f,"%lld %lld",&n,&p);

	long long int rez=1;
	long long int dei=n;
	for (long long int i=0;(1<<i)<=p;++i)
	{
		if ( ((1<<i)&p)>0 )
			rez=(rez*dei)%imp;

		dei=(dei*dei)%imp;
	}

	fprintf (s,"%lld",rez);


	fcloseall();

	return 0;
}