Cod sursa(job #935720)

Utilizator BlueStrutAndrei Prahoveanu BlueStrut Data 4 aprilie 2013 16:02:32
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.41 kb
#include<cstdio>
using namespace std;
int i, n, k, x, j, baza;
long long prod;
int main(){
    freopen("lgput.in","r",stdin);
    freopen("lgput.out","w",stdout);
    scanf("%d%d", &k, &x);
        prod=1; baza=k;
        for (j=0;((1<<j)<=x);++j) {
            if (((1<<j)&x)>0) prod=(prod*baza)%1999999973;
            baza=(baza*baza)%1999999973;
        }
        printf("%lld\n", prod);
    return 0;
}