Cod sursa(job #3301074)

Utilizator prodsevenStefan Albu prodseven Data 21 iunie 2025 14:39:42
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.46 kb
#include <fstream>

using namespace std;

ifstream cin("lgput.in");
ofstream cout("lgput.out");

const long long MOD = 1999999973;

long long lgput(long long base, long long exp) {
    if (exp == 0) return 1;

    long long half = lgput(base, exp / 2);
    if (exp % 2 == 0) {
        return (half * half) % MOD;
    } else {
        return (((base * half) % MOD) * half) % MOD;
    }
}

int main() {
    int a, b; cin >> a >> b;
    cout << lgput(a, b);
    return 0;
}