Cod sursa(job #2443124)

Utilizator evelina.nitoiuNitoiu Evelina evelina.nitoiu Data 26 iulie 2019 16:21:09
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.42 kb
#include <iostream>
#include <fstream>

using namespace std;
ifstream in("lgput.in");
ofstream out("lgput.out");

const int MOD=1999999973;
int ridicarelogaritmica(int n,int p){
    int r=1;
    while(p){
        if(p%2==1)
            r=(1LL*r*n)%MOD;
        n=(1LL*n*n)%MOD;
        p=p/2;
    }
    return r;
}
int main()
{
    int n,p;
    in>>n>>p;
    out<<ridicarelogaritmica(n,p);
    return 0;
}