Cod sursa(job #1040971)

Utilizator fhandreiAndrei Hareza fhandrei Data 25 noiembrie 2013 11:51:38
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
// Include
#include <fstream>
using namespace std;

// Definitii
#define ll long long

// Constante
const ll mod = 1999999973;

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

ll num, power, answer=1;

// Main
int main()
{
	in >> num >> power;
	
	for(int i=0 ; (1<<i)<=power ; ++i)
	{
		if((1<<i)&power)
			answer = (answer * num) % mod;
		
		num = (num * num) % mod;
	}
	
	out << answer << '\n';
	
	in.close();
	out.close();
	return 0;
}