Cod sursa(job #3184097)

Utilizator Codrut_NeagNeag Codrut Serban Codrut_Neag Data 14 decembrie 2023 12:33:07
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.4 kb
#include <fstream>

using namespace std;

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

long long N,P,r=1999999973;

long long ridic(long long N, long long P)
{
    if(P==0)
        return 1;
    if(P%2==0)
        return (ridic(N%r,P/2)*ridic(N%r,P/2))%r;
    if(P%2==1)
        return (ridic(N%r,P-1)*(N%r))%r;
}

int main()
{
    in>>N>>P;
    out<<ridic(N,P);
    return 0;
}