Cod sursa(job #2461523)

Utilizator sebastianp2003Popa Sebastian sebastianp2003 Data 25 septembrie 2019 19:50:46
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.45 kb
#include <bits/stdc++.h>
using namespace std;
ifstream f("lgput.in");
ofstream g("lgput.out");
long long fc(long long a, long long b)
{
    if (b == 1)
        return a % 1999999973ll;
    if (b == 0)
        return 1ll;
    if (b % 2 == 1)
        return ((a * (fc(a, b - 1) % 1999999973ll)) % 1999999973ll);
    return fc(a * a, b / 2) % 1999999973ll;
}
long long a, b;
int main()
{
    f >> a >> b;
    g << fc(a, b);
    return 0;
}