Cod sursa(job #1269148)

Utilizator LizzardStanbeca Theodor-Ionut Lizzard Data 21 noiembrie 2014 22:20:30
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <fstream>
#define _MOD 1999999973
using namespace std;

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

long long power ( long long b, long long e ) {
    if ( e == 0 )
        return 1;
        
    if ( e == 1 )
        return b;
        
    if ( e & 1 )
        return ( power ( b, e - 1 ) % _MOD ) * b % _MOD;
        
    return
        ( power ( b, e >> 1 ) * power ( b, e >> 1 ) ) % _MOD;
}

int main() {
    long long b, e;
    fin >> b >> e;
    fout << power ( b, e );
    return 0;
}