Cod sursa(job #150040)

Utilizator scvalexAlexandru Scvortov scvalex Data 6 martie 2008 15:24:14
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.4 kb
#include <iostream>
#include <fstream>

using namespace std;

long N,
	 P;

int main(int argc, char *argv[]) {
	ifstream fin("lgput.in");
	fin >> N >> P;
	fin.close();

	unsigned long i = 1 << 31;
	long sol = 1;
	while (i > 0) {
		sol = (sol * sol) % 1999999973;
		if (i & P)
			sol = (sol * N) % 1999999973;
		i >>= 1;
	}

	ofstream fout("lgput.out");
	fout << sol << endl;
	fout.close();

	return 0;
}