Cod sursa(job #2436201)

Utilizator reloadeddRosca Ionut reloadedd Data 4 iulie 2019 22:32:37
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.4 kb
#include <fstream>

using namespace std;

const int MOD = 1999999973;
ifstream fin("lgput.in");
ofstream fout("lgput.out");

long long int pow(int N, int P) {
    if (P == 0)
        return 1;
    
    long long rise = pow(N, P / 2) % MOD;

    if (P % 2)
        return (((rise * rise) % MOD) * N) % MOD ;
    return (rise * rise) % MOD;
}

int main() {
    int N, P;
    fin >> N >> P;

    fout << pow(N, P);
}