Cod sursa(job #2296363)

Utilizator DanBarbilianMuresan Dan Adrian DanBarbilian Data 4 decembrie 2018 17:13:47
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.37 kb
#include <iostream>

using namespace std;
long long a, b;

int f(long long a, long long b)
{
    long long rez = 1;
    for(int p = 1; p <= b; p *= 2)
    {
        if( ( p&b ) >0)
        {
            rez = (rez * a) % 1999999973;
        }
        a = (a*a) % 1999999973;
    }
    return rez;
}

 int main()
{
    cin>> a >> b;
    cout<<f(a, b);
}