Cod sursa(job #2366107)

Utilizator Mihai145Oprea Mihai Adrian Mihai145 Data 4 martie 2019 18:31:59
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.52 kb
#include <fstream>

using namespace std;

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

const long long MOD = 1999999973;
long long N, P;

long long RidPut(long long base, long long exp)
{
    long long ans = 1;
    long long aux = base;

    for(int i = 1; i <= exp; i <<= 1)
    {
        if(i & exp)
            ans = (ans * aux) % MOD;

        aux = (aux * aux) % MOD;
    }

    return ans;
}

int main()
{
    fin >> N >> P;

    fout << RidPut(N, P) << '\n';

    return 0;
}