Cod sursa(job #1349445)

Utilizator CosminRusuCosmin Rusu CosminRusu Data 20 februarie 2015 11:07:15
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.38 kb
#include <iostream>
#include <fstream>

using namespace std;

const int mod = 1999999973;

int n, p;

inline int lgpow(int a, int b) {
	a %= mod;
	int ans = 1;
	for( ; b ; b >>= 1) {
		if(b & 1)
			ans = (1LL * ans * a) % mod;
		a = (1LL * a * a) % mod;
	}
	return ans;
}

int main() {
	ifstream fin("lgput.in");
	ofstream fout("lgput.out");

	fin >> n >> p;
	fout << lgpow(n, p) << '\n';
}