Cod sursa(job #2590625)

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

long long int ridicare_logaritmica(long long int N, long long int P)
{
    long long int r=1;
    while(P)
    {
        if(P%2==1)
            r*=N%1999999973;
        N=N*N%1999999973;
        P/=2;
    }
    return r;
}

int main()
{
    ifstream f("lgput.in");
    ofstream g("lgput.out");
    long long int N, P;
    f>>N>>P;
    g<<ridicare_logaritmica(N, P);

    return 0;
}