Cod sursa(job #2972722)

Utilizator KRISTY06Mateiu Ianis Cristian Vasile KRISTY06 Data 30 ianuarie 2023 10:17:46
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.54 kb
#include <iostream>
#include <fstream>
using namespace std;

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

const int MODULO = 1999999973;

int division(int base, int power) {
    if (power == 0) {
        return 1;
    }
    int result = division(base, power / 2);
    if (power % 2 == 0) {
        return result * result % MODULO;
    }
    return ((result % MODULO) * (result % MODULO) % MODULO) * (base % MODULO) % MODULO;
}

int main() {
    int base, power;
    fin >> base >> power;
    fout << division(base, power);
    return 0;
}