Pagini recente » Cod sursa (job #368828) | Cod sursa (job #826122) | Cod sursa (job #220453) | Cod sursa (job #1182957) | Cod sursa (job #1014747)
#include<cstdio>
const int L=1999999973;
using namespace std;
long long raise(long long x,long long p)
{
if(p<1)
return (raise(1/x,-p))%L;
if(p==0)
return 1;
if(p==1)
return x;
if(p%2==0)
{
return (raise(x*x%L,p/2))%L;
}
else
return (x*raise(x*x%L,(p-1)/2))%L;
}
int main()
{
long long n,m;
freopen("lgput.in","r",stdin);
freopen("lgput.out","w",stdout);
scanf("%lld%lld",&n,&m);
long long sol;
sol=raise(n,m);
printf("%lld",sol);
return 0;
}