Cod sursa(job #627494)

Utilizator the_snyper06FMI - ALexandru Mihai the_snyper06 Data 30 octombrie 2011 02:29:03
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include<cstdio>

int n, p;

long long PutereLog(int n, int p)
{
	if(p == 0) return 1;
	if(p % 2 != 0) return PutereLog(n, p - 1) * n % 1999999973;
	else 
	{
		long long x = PutereLog(n, p / 2);
		return x * x % 1999999973;
	}

}

int main()
{
	FILE * fin = fopen("lgput.in", "r");
	FILE * fout = fopen("lgput.out", "w");
	
	fscanf(fin, "%d %d", &n, &p);	
	fprintf(fout, "%lld\n", PutereLog(n, p));
	
	fclose(fin);
	fclose(fout);
	
	return 0;
}