Cod sursa(job #2281854)

Utilizator AndreiSorin26012001Cirpici Andrei Sorin AndreiSorin26012001 Data 12 noiembrie 2018 20:28:58
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.4 kb
#include <bits/stdc++.h>
#define DIM 500005
#define MODULO 1999999973
using namespace std;

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

int a, b;

int power( int a, int b )
{
    if( b == 1 )
        return a;

    if( b % 2 == 0 )
        return (power( a*a, b/2 ))%MODULO;
    else
        return (a*power(a*a, (b-1)/2))%MODULO;
}

int main()
{
    in>>a>>b;
    out<<power(a, b);

    return 0;
}