Cod sursa(job #2640357)

Utilizator JackstilAdascalitei Alexandru Jackstil Data 6 august 2020 10:26:29
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.38 kb
#include <bits/stdc++.h>

using namespace std;

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

int n, p, m = 1999999973;
long long x, sol = 1;

int main() {
    in >> n >> p;

    x = n;
    for (int i = 0; (1 << i) <= p; ++i)  {
        if (((1 << i) & p) > 0)
            sol = (sol * x) % m;

        x = (x * x) % m;
    }

    out << sol;
    return 0;
}