Cod sursa(job #1736394)

Utilizator Bulgaru_Robert_Razvan_323CBBulgaru Robert Razvan Bulgaru_Robert_Razvan_323CB Data 1 august 2016 17:32:15
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.39 kb
#include <iostream>
#include <fstream>

using namespace std;

long long mod=1999999973;

long long power(long long n,long long p) {
	long long result=1;

	while (p>=1) {
		if (p%2==1) {
			result=(result*n)%mod;
			p--;
		}

		n=(n*n)%mod;
		p/=2;
	}

	return result;
}

int main() {
	long long n,p;

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

	in>>n>>p;
	out<<power(n,p);

	return 0;
}