Pagini recente » Diferente pentru problema/dijkstra intre reviziile 44 si 43 | Diferente pentru problema/dijkstra intre reviziile 40 si 39 | Diferente pentru documentatie/macro-uri intre reviziile 3 si 4 | Cod sursa (job #2450121) | Cod sursa (job #2983849)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
const int MAGIC_NO = 1999999973;
long long baza, exponent;
long long ridicare(long long a, long long b) {
long long rest = 1;
while (b) {
if (b % 2 == 1) {
rest = rest * a % MAGIC_NO;
--b;
}
a = a * a % MAGIC_NO;
b /= 2;
}
return rest;
}
int main() {
fin >> baza >> exponent;
fout << ridicare(baza, exponent);
return 0;
}