Cod sursa(job #972551)

Utilizator vld7Campeanu Vlad vld7 Data 12 iulie 2013 01:57:31
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include <fstream>
#include <iostream>

using namespace std;

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

const long long MOD = 1999999973;

long long N, P;

long long exppow (long long A, long long B) {
	if (B == 0)
		return 1;
	else if (B % 2 == 1)
		return (A * exppow (A, B - 1)) % MOD;
	else {
		long long tmp = exppow (A, B / 2) % MOD;
		return (tmp * tmp) % MOD;
	}
}

int main() {
	f >> N >> P;
	
	g << exppow (N, P);
	
	return 0;
}