Pagini recente » Diferente pentru problema/drum intre reviziile 17 si 16 | Cod sursa (job #470161) | Cod sursa (job #3148988) | Cod sursa (job #2853863) | Cod sursa (job #2404087)
#include <iostream>
#include <fstream>
#define MOD 1999999973
std::ifstream in("lgput.in");
std::ofstream out("lgput.out");
unsigned long long lgpow(long long n, long long p)
{
if (p == 0)
return 1;
if (p % 2 == 0)
{
return lgpow(n*n % MOD, p / 2) % MOD ;
}
else
{
return n * lgpow(n*n % MOD, (p - 1)/2) % MOD;
}
}
int main()
{
long long n, p;
in >> n >> p;
out << lgpow(n, p);
}