Cod sursa(job #2461017)

Utilizator 1chiriacOctavian Neculau 1chiriac Data 24 septembrie 2019 20:17:55
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.42 kb
#include <fstream>

using namespace std;
ifstream fin ("lgput.in");
ofstream fout ("lgput.out");
const long long modu=1999999973;
long long putere_log (int a,int n)
{
	if(n==0)
		return 1;
	else
	{
		if(n%2==1)
			return ((a%modu)*(putere_log(((a%modu)*(a%modu))%modu,n/2))%modu)%modu;
		else
			return putere_log(((a%modu)*(a%modu))%modu,n/2)%modu;
	}
}
int main ()
{
	long long n,p;
	fin>>n>>p;
	fout<<putere_log(n,p);
	return 0;
}