Cod sursa(job #2232327)

Utilizator Raoul_16Raoul Bocancea Raoul_16 Data 18 august 2018 16:23:18
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include <fstream>
const std::string programName = "lgput";
std::ifstream f(programName + ".in");
std::ofstream g(programName + ".out");
const int constant = 1999999973;
int main() {
    int N, P;
    f >> N >> P;
    int64_t sol = 1;
    for (int i = 0; (1 << i) <= P; ++i) {
        if ( ((1 << i) & P) > 0)
            sol = (sol * N) % constant;
        N = (N * N) % constant;
    }
    g << sol;
    return 0x0;
}