Cod sursa(job #1755425)

Utilizator lucian666Vasilut Lucian lucian666 Data 10 septembrie 2016 09:05:43
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb


#include <iostream>
#include <fstream>
#include <algorithm>

#define mod 1999999973
using namespace std;
ofstream out("lgput.out");

long long N,P;

int bin_Putere(long long baza, long long expo)
{
    long long sol = 1;
    for(;expo; expo >>= 1)
    {
        if(expo & 1)
        {
            sol = (sol * baza) % mod;
        }

        baza = (baza * baza) % mod;
    }

    return sol;
}

int main()
{
    ifstream in("lgput.in");

    in >> N >> P;

    out << bin_Putere(N,P) % mod;

    return 0;
}