Cod sursa(job #1919539)

Utilizator victorpapa98Papa Victor-Alexandru victorpapa98 Data 9 martie 2017 19:59:21
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
# include <cstdio>
using namespace std;

FILE *f = freopen("lgput.in", "r", stdin);
FILE *g = freopen("lgput.out", "w", stdout);

const int MOD = 1999999973;

int a, b;

void read(){
    scanf("%d %d", &a, &b);
}

int put(int a, int b){

    int aux = a;
    int rez = 1;

    for (int i=1; i <= b; i <<= 1){

        if (b & i){
            rez *= aux;
            rez %= MOD;
        }

        aux = aux * aux;
        aux %= MOD;
    }

    return rez;
}

void solve(){
    printf("%d\n", put(a, b));
}

int main(){
    read();
    solve();
    return 0;
}