Cod sursa(job #1490990)

Utilizator MayuriMayuri Mayuri Data 24 septembrie 2015 16:31:17
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <cstdio>

using namespace std;

const int MOD = 1999999973;

int mypow(int n, int p) {
    int ans = 1;
    for( ; p; p = p >> 1) {
        if(p & 1) {
            ans = ((long long)ans * n) % MOD;
        }
        n *= n;
    }
    return ans;
}

int main() {
    freopen("lgput.in", "r", stdin);
    freopen("lgput.out", "w", stdout);

    int n, p;

    scanf("%d%d", &n, &p);

    printf("%d", mypow(n, p));

    return 0;
}