Cod sursa(job #2252622)

Utilizator flee123Flee Bringa flee123 Data 2 octombrie 2018 20:54:49
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include <iostream>
#include <fstream>
#define MOD 1999999973
using namespace std;

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

long long fast_power(long long base, long long power)
{
    long long result = 1;
    while(power > 0)
    {

        if(power & 1)
        { // Can also use (power & 1) to make code even faster
            result = (result*base) % MOD;
        }
        base = (base * base) % MOD;
        power >>=1; // Can also use power >>= 1; to make code even faster
    }
    return result;
}

int main()
{
    long long baza,exponent;
    fin >> baza >> exponent;
    fout << fast_power(baza,exponent);


    return 0;
}