Cod sursa(job #3249070)

Utilizator hiken056Stefan Rusu hiken056 Data 14 octombrie 2024 17:33:54
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.41 kb
#include <bits/stdc++.h>

using namespace std;

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

const int MOD = 1999999973;
int N, P;

int logPow ( int n, int p ) {
    if ( p == 0 ) return 1;
    int n2 = logPow(n, p/2);
    if ( p % 2 == 0 ) {
        return (n2 * n2 % MOD); 
    }
    else return (((n2 * n2 % MOD) * n) % MOD );
}

int main () {

    fin >> N >> P;
    fout << logPow(N, P);
    return 0;
}