Pagini recente » Cod sursa (job #495259) | Cod sursa (job #280591) | Cod sursa (job #2944919) | Cod sursa (job #107719) | Cod sursa (job #971204)
Cod sursa(job #971204)
#include <fstream>
long long unsigned lgput(long long unsigned n, long long unsigned p)
{
if(p < 0) return lgput(1 / n, -p) % 1999999973;
if(p == 1) return n % 1999999973;
if(p == 0) return 1 % 1999999973;
if(p % 2 == 0) return lgput(n * n, p / 2) % 1999999973;
return (n % 1999999973) * (lgput(n * n, (p - 1) / 2) % 1999999973);
}
int main(void)
{
std::ifstream in("lgput.in");
std::ofstream out("lgput.out");
long long unsigned nV, nP;
in >> nV >> nP;
out << lgput(nV, nP) % 1999999973;
return 0;
}