Pagini recente » Diferente pentru problema/reflex intre reviziile 12 si 13 | Cod sursa (job #1656784) | Cod sursa (job #1083224) | Cod sursa (job #374505) | Cod sursa (job #1382565)
#include <cstdio>
#include <algorithm>
using namespace std;
#define N 1999999973
int p,n;
int lgp(int p)
{
if(p==0) return 1;
if(p%2==1)
return (n*lgp(p-1))%N;
int x=lgp(p/2);
return (x*x)%N;
}
int main()
{
freopen("lgput.in","r",stdin);
freopen("lgput.out","w",stdout);
scanf("%d%d",&n,&p);
printf("%d\n",lgp(p));
return 0;
}