Cod sursa(job #2320666)

Utilizator andra_moldovanAndra Moldovan andra_moldovan Data 14 ianuarie 2019 23:35:08
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.53 kb
#include <fstream>

using namespace std;

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

inline void Read(long long &baza, int &exp) {
    fin >> baza >> exp;
}

inline long long Solve(long long baza, int exp) {
    long long sol = 1;
    while (exp) {
        if (exp % 2 == 1) {
            sol *= baza;
            exp--;
        }
        exp /= 2;
        baza *= baza;
    }
    return sol;
}

int main () {
    long long baza;
    int exp;
    Read(baza, exp);

    fout << Solve(baza, exp);
}