Cod sursa(job #1486429)

Utilizator DacianBocea Dacian Dacian Data 14 septembrie 2015 20:51:05
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.41 kb
#include <fstream>
long long int p(long long int n, long long int m){
	if (m == 0) return 1;
	else if (m == 1) return n % 1999999973;
	else if (!(m % 2)) return (p(n*n % 1999999973, m / 2) % 1999999973);
	else return n*p(n*n % 1999999973, m / 2) % 1999999973;
}
int main(){
	long long int a, b;
	std::ifstream f("lgput.in");
	std::ofstream g("lgput.out");
	f >> a >> b;
	g << p(a, b) << '\n';
	return 0;
}