Cod sursa(job #2366606)

Utilizator puzzleFlutur Vasile puzzle Data 4 martie 2019 21:10:30
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.4 kb
#include <iostream>
#include <fstream>

#define MOD 1999999973

std::ifstream in("lgput.in");
std::ofstream out("lgput.out");

unsigned long long lgpow(long long n, long long p)
{
	if (p == 0)
		return 1;
	if (p % 2 == 0)
	{
		return lgpow(n*n, p / 2) % MOD ;
	}
	else
	{
		return n * lgpow(n, p - 1) % MOD;
	}
}

int main()
{
	long long  n, p;
	in >> n >> p;
	out << lgpow(n, p);
}