Cod sursa(job #2422525)

Utilizator melutMelut Zaid melut Data 19 mai 2019 00:19:54
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>
#include <string>

using namespace std;


string const inFile = "lgput.in";
string const outFile = "lgput.out";


unsigned const MOD = 1999999973;


ifstream Read(inFile);
ofstream Write(outFile);


unsigned Power(long long base, long long exp) {
    long long result = 1;

    while (exp > 0) {
        if (exp & 1) {
            result = (result * base) % MOD;
        }

        exp >>= 1;
        base = (base * base) % MOD;
    }

    return result;
}


int main() {
    long long base;
    long long exp;

    Read >> base;
    Read >> exp;

    Write << Power(base, exp);

    return 0;
}