Cod sursa(job #3184096)

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

using namespace std;

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

long long N,P,r=1999999973;

int ridic(int N, int 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;
}