Cod sursa(job #2703251)

Utilizator EdiTNSTanasa Edberg EdiTNS Data 7 februarie 2021 20:05:01
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.46 kb
#include <iostream>
#include <fstream>

using namespace std;

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

const int mod = 1999999973;
int ridicarelaputere(int a, int b)
{
    int r = 1;
    while (b)
    {
        if (b % 2 == 1)
            r = (1LL * r * a) % mod;
        a = (1LL * a * a) % mod;
        b = b / 2;
    }
    return r;
}
int main()
{
    int a, b;
    fin >> a >> b;
    fout << ridicarelaputere(a, b);
    return 0;
}