Pagini recente » Cod sursa (job #2530179) | Cod sursa (job #781769) | Cod sursa (job #3209697) | Cod sursa (job #811224) | Cod sursa (job #432094)
Cod sursa(job #432094)
#include<iostream>
#include<fstream>
#define modulo 1999999973
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
long long var;
long long lgput(long long int N, long long int P)
{
if(P==1)
return N%modulo;
else
if(P==2)
return (N*N)%modulo;
else
{
if(P%2==0)
{
var = lgput(N,P/2);
return (var*var)%modulo;
}
else
{
var = lgput(N,(P-1)/2);
var = (var*var)% modulo;
return (var*N) % modulo;
}
}
}
long long N,P,result;
int main()
{
fin>>N;
fin>>P;
result=lgput(N,P);
fout<<result;
return 0;
}