Cod sursa(job #157474)

Utilizator mithyPopovici Adrian mithy Data 13 martie 2008 01:02:24
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.38 kb
#include <stdio.h>

long long pow( long long x, long long n )
{
	if ( n == 0 )
		return 1;

	if ( n % 2 )
		return x * pow(x*x,(n-1)/2);
	else
		return pow(x*x, n/2);
}

int main()
{
	long long x, n;

	freopen( "lgput.in", "rt", stdin );
	freopen( "lgput.out", "wt", stdout );

	scanf( "%lld %lld", &x, &n );
	printf( "%lld\n", (pow( x, n )%1999999973) );

	return 0;
}