Cod sursa(job #3144868)

Utilizator EricDimiC. Eric-Dimitrie EricDimi Data 10 august 2023 23:41:31
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.44 kb
#include <iostream>
#include <fstream>
#define ll long long

using namespace std;

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

ll LogP(ll a, ll n, ll MOD)
{
    ll p = 1;
    while (n > 0)
    {
        if (n % 2 == 1) p = p * a % MOD;
        a = a * a % MOD;
        n /= 2;
    }
    return p;
}

ll a, b, MOD = 1999999973;

int main()
{
    f >> a >> b;
    a = a % MOD;
    g << LogP(a, b, MOD);

    return 0;
}