Cod sursa(job #930818)

Utilizator mottyMatei-Dan Epure motty Data 27 martie 2013 20:35:18
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include <fstream>

using namespace std;

const long long MOD = 1999999973;

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

long long power(long long base, long long exp) {
	if (exp == 1)
		return base % MOD;
	if (exp % 2)
		return (power((base*base) % MOD, exp/2) * base) % MOD;
	return power((base*base) % MOD, exp/2) % MOD;
}

int main() {
	long long n, p;
	in >> n >> p;

	out << (power(n, p)) % MOD << "\n";

	return 0;
}