Cod sursa(job #1431076)
Utilizator | Data | 8 mai 2015 23:45:03 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.4 kb |
#include <cstdio>
#include <iostream>
#define MOD 1999999973
int main() {
long long n, p, a = 1;
freopen ("lgput.in", "r", stdin);
freopen ("lgput.out", "w", stdout);
scanf ("%lld %lld", &n, &p);
while (p > 0) {
if (p & 1) {
a = (a * n) % MOD;
p--;
}
n = (n * n) % MOD;
p >>= 1;
}
printf ("%lld", a);
return 0;
}