Cod sursa(job #2367856)

Utilizator RussianSmoothCriminalRodion Raskolnikov RussianSmoothCriminal Data 5 martie 2019 12:33:09
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.5 kb
#include <fstream>
#include <iostream>
#include <bitset>
using namespace std;
const int mod = 1999999973;
ifstream fin ("lgput.in");
ofstream fout ("lgput.out");
typedef unsigned int ui;
ui lgput (ui a, ui b)
{
    ui p = 1;
    while (b)
    {
        if (b & 1)
            p = 1LL * p * a % mod;
        b >>= 1;
        a = 1LL * a * a % mod;
    }
    return p;
}
int main()
{
    ui a, b;
    fin >> a >> b;
    fout << lgput (a, b) << "\n";
    fout.close();
    return 0;
}