Pagini recente » Diferente pentru template/despre-infoarena intre reviziile 8 si 7 | Diferente pentru problema/autobuze2 intre reviziile 5 si 6 | Atasamentele paginii Subsir 2 | Diferente pentru algoritmiada-2013/runda-finala intre reviziile 2 si 3 | Cod sursa (job #2814359)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
const int MOD = 1999999973;
int main() {
unsigned n, p;
fin >> n >> p;
int ans = 1;
while(p) {
if(p & 1)
ans = (1LL * ans * n) % MOD;
n = (1LL * n * n) % MOD;
p >>= 1;
}
fout << ans;
fin.close();
fout.close();
return 0;
}