Pagini recente » Diferente pentru teorema-chineza-a-resturilor intre reviziile 60 si 61 | Istoria paginii runda/simulare_oji_10_1 | Cod sursa (job #1245376) | Cod sursa (job #1682757) | Cod sursa (job #2952380)
#include <iostream>
using namespace std;
int main() {
long long x, n;
int k = 1999999973;
cin >> x >> n;
if (n == 0) {
cout << 1 % k;
} else if (n % 2 == 0) {
for (int i = 1; i <= n / 2; ++i) {
x *= x;
}
cout << x % k;
} else {
int x_cpy = x;
for (int i = 1; i <= n - 1; ++i) {
x *= x;
}
cout << (x_cpy * x) % k;
}
return 0;
}