Cod sursa(job #1038172)

Utilizator MoneaVladMonea Vlad MoneaVlad Data 21 noiembrie 2013 08:12:15
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.3 kb
#include <fstream>
using namespace std;
ifstream in("lgput.in");
ofstream out("lgput.out");
int m = 1999999973;
int i, n, p;
long long a, k=1;

int main()
{
    in>>n>>p;
    a=n;
    for(i=0; (1<<i)<=p; ++i)
    {
        if(((1<<i) & p)>0) k=(k*a)%m;
        a=(a*a)%m;
    }
    out<<k;
}