Cod sursa(job #1356259)

Utilizator rares96cheseliRares Cheseli rares96cheseli Data 23 februarie 2015 12:21:34
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
#include <fstream>
using namespace std;

ifstream f("lgput.in");
ofstream g("lgput.out");

const int mod=1999999973;
int N, P;

long long lg_exp(long long baza, long long exp)
{
    long long rez=1;
    while (exp)
    {
        if (exp%2) rez*=baza;
        baza*=baza; baza%=mod;
        exp/=2; rez%=mod;
    }
    return rez;
}

int main()
{
    f>>N>>P;
    g<<lg_exp(N, P)<<'\n';
    return 0;
}