Cod sursa(job #3357644)

Utilizator dragos_22Dragos-Radu Stiuca dragos_22 Data 12 iunie 2026 14:56:42
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.44 kb
#include <iostream>

using namespace std;

#define MOD  1999999973;

int RidicareLaPutere(int n , int p)
{
    if(p == 0)
        return 1;
    if(p % 2 == 1)
        return n * RidicareLaPutere(n , p - 1) % MOD;
    int P = RidicareLaPutere(n , p / 2) % MOD;
    return P * P;
}

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