Cod sursa(job #2568258)

Utilizator AlexGFXMatei Alexandru AlexGFX Data 3 martie 2020 21:42:27
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.45 kb
#include <iostream>
#include <stdio.h>

using namespace std;

int MOD = 1999999973;

int lgput(int n, int p) {
    int res = 1;
    while(p > 0) {
        if(p % 2 == 1) {
            res = (res * n) % MOD;
        }
        p = p/2;
        n = (n*n) % MOD;
    }
    return res;
}

int main() {
    freopen("lgput.in", "r", stdin);
    freopen("lgput.out", "w", stdout);
    int n, p;
    cin >> n >> p;
    cout << lgput(n, p);

}