Cod sursa(job #2529981)

Utilizator KillHorizon23Orban Robert KillHorizon23 Data 24 ianuarie 2020 11:27:35
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.45 kb
#include<bits/stdc++.h>
#define ll long long int
#define close return 0;
#define MD 1999999973
using namespace std;
ifstream fin ("lgput.in");
ofstream fout ("lgput.out");
ll ppow(int n, int p)
{
    ll aux = 1;
    while (p)
    {
        if (p % 2)
            aux = (aux * n) % MD;
        n = (n * n + 0ll) % MD;
        p /= 2;
    }
    return aux;
}
int main()
{
    int n, p;
    fin >> n >> p;
    fout << ppow(n, p);
    close
}