Pagini recente » Cod sursa (job #2087921) | Cod sursa (job #138495) | Cod sursa (job #1145466) | Profil Sava_Barbuta_Dospra | Cod sursa (job #432066)
Cod sursa(job #432066)
#include<iostream>
#include<fstream>
#define modulo 1999999973
#define SQ(x) (long long) (x) * (x)
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
int lgput(int N, int P)
{
if(P==1)
return ( long long ) N % modulo;
else
if(P==2)
return (SQ(N)) % modulo;
else
{
if(P%2==0)
return (SQ(lgput(N,P/2))) % modulo;
else
return ((long long) lgput(N,P-1) * N) % modulo;
}
}
long long N,P,result;
int main()
{
fin>>N;
fin>>P;
result = lgput(N,P);
fout<<result;
return 0;
}