Cod sursa(job #2590620)

Utilizator MoarcascosminMoarcas Cosmin Moarcascosmin Data 28 martie 2020 15:39:21
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.47 kb
#include <iostream>
#include <fstream>
using namespace std;

long long int ridicare_logaritmica(long long int N, long long int P)
{
    long long int r=1;
    while(P)
	{
		if(P%2==1)
			r*=N;
		N=N*N;
        P/=2;
	}
	return r;
}

int main()
{
	ifstream f("lgput.in");
	ofstream g("lgput.out");
	long long int N, P;
	f>>N>>P;
	int MOD=1999999973;
	long long solutie=ridicare_logaritmica(N, P);
	solutie=solutie%MOD;
	g<<solutie;

    return 0;
}