Cod sursa(job #371838)

Utilizator avram_florinavram florin constantin avram_florin Data 7 decembrie 2009 10:01:12
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
//ridicare la putere in timp logaritmic
//infoarena -> arhiva educationala lgput
#include<cstdio>
using namespace std;
unsigned long long n,m,p,r;
int main ()
{
	freopen("lgput.in" , "r" , stdin);
	freopen("lgput.out" , "w" , stdout);
	scanf("%d%d" ,  &n , &p);
	p = 1;
	m = 1999999973;
	while(p)
		{
			if( p % 2 )
				r = (r * n) % m;
			n = (n * n) % m;
			p/=2;
		}
	printf("%lld\n" , r );
	return 0;
}