Cod sursa(job #3134489)

Utilizator indibotocIndi Botoc indibotoc Data 29 mai 2023 09:56:30
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.46 kb
#include <fstream>
#define MAXI 1999999973

long long N, P;
std::ifstream fin("lgput.in");
std::ofstream fout("lgput.out");

long long rec(long long i)
{
    if (i==1)
        return N%MAXI;
    if (i%2==0)
    {
        long long aux = rec(i/2)%MAXI;
        return (rec(i/2)*aux)%MAXI;
    }
    else
        return (N*rec(i-1))%MAXI;
}

int main()
{
    fin>>N>>P;
    fout<<rec(P)<<"\n";
    fin.close();
    fout.close();
    return 0;
}