Cod sursa(job #1371458)

Utilizator xoSauceSergiu Ferentz xoSauce Data 3 martie 2015 21:34:33
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.35 kb
#include <iostream>
#include <fstream>

int mod = 1999999973;
using namespace std;
int solve(int n,int p){
	if(p == 0)
		return 1;
	if(p%2 == 0){
		return solve((n*n)%mod,p/2);
	}else{
		return (n * solve(n%mod,p-1))%mod;
	}
}

int main(){
	ofstream out("lgput.out");
	ifstream in("lgput.in");
	int n,p;
	in >> n >> p;
	out << solve(n,p) << endl;
	return 0;
}