Pagini recente » Cod sursa (job #2556842) | Cod sursa (job #2082070) | Cod sursa (job #1203443) | Cod sursa (job #126191) | Cod sursa (job #3230490)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
long divizor;
int logPower(int n, int p)
{
if(p == 1)
return n;
if(p % 2 == 0)
{
long power = logPower(n, p/2);
long rest = power % divizor;
return (rest * rest) % divizor;
}
else
{
long power = logPower(n, (p-1) / 2);
long rest = power % divizor;
return (((rest * rest) % divizor) * n) % divizor;
}
}
int main()
{
int n, p;
fin >> n >> p;
long t;
divizor = 1999999973;
t = logPower(n, p);
fout << t;
return 0;
}