Cod sursa(job #3364657)

Utilizator andrei_brasoveanu7Andrei Octavian andrei_brasoveanu7 Data 8 septembrie 2026 18:56:57
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include <bits/stdc++.h>
#define mod 1999999973
using namespace std;

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

long long n, p, r=1;

int main () {
    in >> n >> p;
    if (p == 0)
    {
        out << 1;
        in.close();
        out.close();
        return 0;
    }
    while (p)
    {
        if (p % 2 != 0) // Daca o
        {
            r = (r*n) % mod;
        }
        // cazul de baza  SE RRDICA. MEREU la patreat
        n = (n*n)%mod;
        p=p/2;
    }
    out << r;

    in.close();
    out.close();
    return 0;
}