Cod sursa(job #2590633)

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

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

long long int ridicare_in_timp_logaritmic(long long int N, long long int P, long long int R)
{
    if(P==0)
		return R;
    if(P%2==1)
		ridicare_in_timp_logaritmic(N*N, P/2, R*N);
	else
		ridicare_in_timp_logaritmic(N*N, P/2, R);
}

int main()
{
    ifstream f("lgput.in");
    ofstream g("lgput.out");

    long long N, P, R=1;
    long long MOD=1999999973;
    f>>N>>P;

    long long int solutie=ridicare_in_timp_logaritmic(N, P, R);
    solutie=solutie%MOD;
    cout<<solutie;
    return 0;
}