Cod sursa(job #2076734)

Utilizator dariusdariusMarian Darius dariusdarius Data 27 noiembrie 2017 00:49:18
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.39 kb
#include <fstream>
#include <iostream>
using namespace std;

int main() {
    ifstream cin("lgput.in");
    ofstream cout("lgput.out");
    unsigned a, n, MOD = 1999999973;
    cin >> a >> n;
    unsigned r;
    for (r = 1; n; n >>= 1) {
        if (n & 1) {
            r = 1LL * r * a % MOD;
        }
        a = 1LL * a * a % MOD;
    }
    cout << r << "\n";
    return 0;
}