Cod sursa(job #1041469)

Utilizator test9cosmin Macovei test9 Data 25 noiembrie 2013 20:42:49
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<fstream>
using namespace std;
ifstream f("lgput.in");
ofstream g("lgput.out");
int exponent, modul;
long long sol, baza;
int main()
{
    f >> baza >> exponent;
    modul = 1999999973;
    sol = 1;
    while (exponent != 0)
    {
        if (exponent % 2 == 1)
        {
            sol = sol * baza;
            sol = sol % modul;
            //exponent = exponent - 1;
        }
        exponent = exponent / 2;
        baza = baza * baza;
        baza = baza % modul;
    }
    g << sol << '\n';
    g.close();
    return 0;
}