Cod sursa(job #2493899)

Utilizator cosmin1972Nour Mihai-Cosmin cosmin1972 Data 17 noiembrie 2019 09:31:39
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.53 kb
#include <iostream>
#include <fstream>

using namespace std;

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

const int MOD = 1999999973;

long long int pw(long long int base,long long int y)
{
    int rez=1;
    while(y>0)
    {
        if(y%2==0)
        {
            base=base*base%MOD;
            y/=2;
        }
        else
        {
            rez=rez*base%MOD;
            y--;
        }
    }
    return rez%MOD;
}

int main()
{
    long long int x,y;
    in>>x>>y;
    out<<pw(x,y);
}