Cod sursa(job #2640735)

Utilizator PushkinPetolea Cosmin Pushkin Data 7 august 2020 20:06:16
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.46 kb
#include <bits/stdc++.h>
using namespace std;

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

#define ullong unsigned long long
#define aux 1999999973

ullong lgput(ullong n, ullong p)
{
    ullong res=1;
    while(p)
    {
        if(p&1)
            res=res*n%aux;
        n=n*n%aux;
        p>>=1;
    }
    return res;
}

int main()
{
    ullong n, p;
    f>>n>>p;
    g<<lgput(n, p);
    f.close();
    g.close();
    return 0;
}