Pagini recente » Borderou de evaluare (job #1559105) | Cod sursa (job #1374837) | Cod sursa (job #3335884) | Cod sursa (job #988424) | Cod sursa (job #2406394)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
int lgput(int a, int n)
{
if(n == 0)
{
return 1;
}
if(n % 2 == 0)
{
return lgput((long long)a * a % 1999999973, n / 2);
}
return (long long)a * lgput((long long)a * a % 1999999973, n / 2) % 1999999973;
}
int main()
{
int n, p;
fin >> n >> p;
fout << lgput(n, p);
fin.close();
fout.close();
return 0;
}