Cod sursa(job #1985541)

Utilizator ArctopusKacso Peter-Gabor Arctopus Data 28 mai 2017 01:53:56
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <iostream>
#include <fstream>

#define ll long long

using namespace std;

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

const ll MOD = 1999999973;

int main()
{
    ll base, pow, add;
    fin >> base >> pow;

    ll res = base;
    add = 1;

    while( pow > 1 )
    {
        if( pow % 2 == 1 )
        {
            add *= res;
            add %= MOD;
        }
        pow /= 2;
        res *= res;
        res %= MOD;
    }
    res *= add;
    res %= MOD;

    fout << res;



    return 0;
}