Cod sursa(job #2930762)

Utilizator Robilika2007Robert Badea Robilika2007 Data 29 octombrie 2022 15:24:23
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.5 kb
#include <iostream>
#include <fstream>

using namespace std;

#define MOD 1999999973

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

int ridicput (int n, int p)
{
    int put = 1;
    while (p > 1)
    {
        if(p % 2 == 1)
            put = (long long)put * n % MOD;
        n = (long long)n * n % MOD;
        p = p / 2;

    }
    return (long long)n * put % MOD;
}

int main()
{
    int n, p, put;
    fin >> n >> p;

    fout << ridicput(n, p);
    return 0;
}