Cod sursa(job #2562817)

Utilizator Simionescu_RaulSimionescu Raul Simionescu_Raul Data 29 februarie 2020 18:19:03
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.47 kb
#include <bits/stdc++.h>
#define m 1999999973
using namespace std;
ifstream in("lgput.in");
ofstream out("lgput.out");
unsigned long long rid(unsigned long long baza,unsigned long long exp)
{
    unsigned long long rasp=1;
    while(exp)
    {
        if(exp%2) rasp=((baza%m)*(rasp%m))%m;
        baza=((baza%m)*(baza%m))%m;
        exp/=2;
    }
    return rasp;
}
int main()
{
    unsigned long long a,b;
    in>>a>>b;
    out<<rid(a,b);
        return 0;
}