Cod sursa(job #2721261)

Utilizator GabiTulbaGabi Tulba-Lecu GabiTulba Data 11 martie 2021 17:59:19
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.46 kb
#include <bits/stdc++.h>

#define MOD 1999999973

using namespace std;

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

int lgput(int base, int exp) {
    if (exp == 0) {
        return 1;
    }

    int result = lgput(base, exp / 2);
    result = (1LL * result * result) % MOD;

    if (exp % 2 == 1) {
        result = (1LL * result * base) % MOD;
    }

    return result;
}

int main() {
    int N, P;

    fin >> N >> P;
    fout << lgput(N, P);

    return 0;
}