Cod sursa(job #3212344)

Utilizator gfxwdAndrei Clopot gfxwd Data 11 martie 2024 16:50:21
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <bits/stdc++.h>

using namespace std;

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

long long LgPut(long long nr, long long  exp, int val){
    if(exp==0)
        return 1;

    else{
        long long p=LgPut(nr, exp/2, val);
        if(exp%2==0)
            //return x* LgPut(x*x, (n-1)/2);
            return p*p%val;

        //return LgPut(x*x, n/2);
        return p*p%val* nr%val;
    }



}

int main()
{
    long long n,p;
    f>>n>>p;


    long long nrLung = 1999999973;
    long long x= LgPut(n,p, nrLung);

    g<< x;
    return 0;
}