Cod sursa(job #2882887)

Utilizator Mihai7218Bratu Mihai-Alexandru Mihai7218 Data 31 martie 2022 21:32:40
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.42 kb
#include <fstream>
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
long long n, i, p;
const long long modul = 1999999973;
long long lgput (long long b, long long e)
{
    b %= modul;
    if (e == 0) return 1;
    if (e == 1) return b%modul;
    if (e % 2 == 0) return (lgput(b*b, e/2))%modul;
    return (b*lgput(b*b, (e-1)/2))%modul;
}
int main ()
{
    fin >> n >> p;
    fout << lgput(n, p)%modul;
}