Cod sursa(job #2362423)

Utilizator mihai.alphamihai craciun mihai.alpha Data 3 martie 2019 10:41:45
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.49 kb
#include <bits/stdc++.h>

using namespace std;

const long long mod = 1999999973LL;

inline int lgp(long long n, long long p)  {
    long long nr = 1LL;
    while(p)  {
        if(p & 1)  {
            nr *= n;
            nr %= mod;
        }
        n *= n;
        n %= mod;
        p >>= 1;
    }
    return nr;
}

int main()  {
    ifstream cin("lgput.in");
    ofstream cout("lgput.out");
    long long n, p;
    cin >> n >> p;
    cout << lgp(n, p);
    return 0;
}