Cod sursa(job #2963263)

Utilizator RobertlelRobert Robertlel Data 10 ianuarie 2023 17:32:17
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.48 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f ("lgput.in");
ofstream g ("lgput.out");

int n , p;

int ridicare_logaritmica (int n , int p)
{
    int rez = 1;
    while (p)
    {
        if (p % 2 == 1)
            rez = (1LL * rez * n) % 1999999973;
            n = (1LL * n * n) % 1999999973;
            p =  p / 2;
    }
    return rez;
}


int main()
{
    f >> n >> p;
    g << ridicare_logaritmica (n , p);
    return 0;
}