Cod sursa(job #3235798)

Utilizator Ioanaand923Ioana Iliescu Ioanaand923 Data 21 iunie 2024 16:03:48
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.43 kb
#include <fstream>

using namespace std;

ifstream cin("lgput.in");
ofstream cout("lgput.out");

long long n, p;
long long lgpow (long long b, long long exp)
{
    if (exp == 0)
        return 1;

    if (exp % 2 == 0)
        return lgpow((b * b) % 1999999973, exp / 2);

    else
        return (b * lgpow (b, exp - 1) % 1999999973);
}

int main()
{
    cin >> n >> p;
    cout << lgpow(n, p);

    return 0;
}