Cod sursa(job #1047259)

Utilizator george321george george321 Data 4 decembrie 2013 09:29:22
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;
}