Cod sursa(job #614884)

Utilizator andreea29Iorga Andreea andreea29 Data 7 octombrie 2011 21:01:10
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include<stdio.h>

using namespace std;

long long int putere(long long int a, long long int b)
{
	if (b==0)
		return 1;
	else
		if (b%2==0)
			return putere((a*a)%1999999973, b/2)%1999999973;
		else
			return (a*putere((a*a)%1999999973, b/2)%1999999973)%1999999973;
		

}

int main()

{
	long long int n, p;
	freopen ("lgput.in","r",stdin);
	freopen("lgput.out","w",stdout);
	scanf ("%lld %lld", &n, &p);
	printf("%lld \n",putere(n,p));

	return 0;
}