Pagini recente » Cod sursa (job #1943919) | Cod sursa (job #3285096) | Cod sursa (job #414832) | Cod sursa (job #1046257) | Cod sursa (job #1464061)
#include <cstdio>
#include <cstring>
#include <cstdlib>
using namespace std;
int px = 1;
long solve(long x, long p)
{
x = x % 1999999973;
p = p % 1999999973;
if(p <= 1)
{
return x * px;
}
else
{
if(p % 2 == 0)
{
return solve((x * x) % 1999999973, p / 2);
}
else
{
px = (px * x) % 1999999973;
return solve(x, p - 1);
}
}
}
int main()
{
freopen("lgput.in", "r", stdin);
freopen("lgput.out", "w", stdout);
long x, p, prod;
scanf("%i %i", &x, &p);
prod = solve(x, p);
printf("%i", prod);
return 0;
}