Pagini recente » Cod sursa (job #3327961) | Cod sursa (job #2971551) | Diferente pentru utilizator/crawler intre reviziile 46 si 40 | Diferente pentru problema/hamster intre reviziile 23 si 22 | Cod sursa (job #2972738)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
const int MODULO = 1999999973;
long long powerRising(int base, int power) {
if (power == 0) {
return 1;
}
long long result = powerRising(base, power / 2);
if (power % 2 == 0) {
return result * result % MODULO;
}
return ((long long) (result % MODULO) * (result % MODULO) % MODULO) * (base % MODULO) % MODULO;
}
int main() {
int base, power;
fin >> base >> power;
fout << powerRising(base, power);
return 0;
}