Cod sursa(job #1154192)

Utilizator roxana.istratePoenaru Roxana roxana.istrate Data 26 martie 2014 00:24:37
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <queue>

#define MAX 50000

using namespace std;

long compose (long n, long p){
	long c;
	if(p == 1) return n;
	if(p == 0) return 1;
	c = compose(n,p / 2);
	if(p % 2 == 0){
		return c * c;
	}
	return c*c*n;
}

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

	long n, p;
	fin >> n >> p;

	fout << compose(n, p) % 1999999973;
	return 0;
}