Cod sursa(job #2162372)

Utilizator PopeangaMihneaPopeanga Mihnea- Stefan PopeangaMihnea Data 12 martie 2018 10:28:28
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.4 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("lgput.in");
ofstream fout("lgput.out");

const int MOD=1999999973;
typedef unsigned long long ULL;
ULL  a, p, n;

ULL lgput(ULL n, ULL p)
{
    if(p==1) return n;
    if(p%2==0) return lgput(n, p/2)*lgput(n, p/2)%MOD;
    else return n*lgput(n, p-1)%MOD;
}

int main()
{
    fin>>n>>p;
    fout<<lgput(n, p);
    return 0;
}