Cod sursa(job #2076679)

Utilizator dey44andIoja Andrei-Iosif dey44and Data 26 noiembrie 2017 22:09:33
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include <iostream>
#include <fstream>
#define mod 1999999973
typedef long long ll;

using namespace std;

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

ll exponentiere(ll x, ll n)
{
    x = x % mod;
    if(n==1) return x;
    if(n%2==0) return exponentiere((x * x) % mod,  n / 2 ) % mod;
    return exponentiere((x * x) % mod, (n - 1) / 2 ) % mod;
}

int main()
{
    ll baza, exponent;
    in >> baza >> exponent;
    out << exponentiere(baza, exponent);
    return 0;
}