Cod sursa(job #1661843)

Utilizator NineshadowCarapcea Antonio Nineshadow Data 24 martie 2016 11:13:29
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.33 kb
#include <fstream>
std::ifstream in("lgput.in");
std::ofstream out("lgput.out");
using t = unsigned long long;
t x , n, s = 1 , p, m = 1999999973;
main()
{
    in >> x >> n;
    p = x;
    for(t i = 0; (1<<i) <= n; ++i)
    {
        if((1<<i & n) > 0)
            s = (s*p)%m;
        p = (p*p)%m;
    }
    out << s;
}