Pagini recente » Cod sursa (job #2782692) | Cod sursa (job #1780032) | Cod sursa (job #22038) | Cod sursa (job #2601475) | Cod sursa (job #782199)
Cod sursa(job #782199)
#include<cstdio>
#include<cmath>
using namespace std;
long long factorial(int n)
{
return (n == 1 || n == 0) ? 1 : factorial(n - 1) * n;
}
int main()
{
freopen("kperm.in","r",stdin);
freopen("kperm.out","w",stdout);
int n,k,c,r,d;
long long rez=1,x,x1,a;
scanf("%d %d",&n,&k);
if(n%2==0)printf("0");
else
{
c=n/k;
r=n%k;
d=k-r;
rez=(long long)factorial(r)%666013;
//printf("%lld",rez);
rez=(long long)rez*factorial(d)%666013;
x1=x=(long long)factorial(c+1)%666013;
for(int i=1;i<r;++i)
x1=(long long)x1*x%666013;
rez=(long long)rez*x1%666013;
x1=x=(long long)factorial(c)%666013;
for(int i=1;i<d;++i)
x1=(long long)x1*x%666013;
rez=(long long)rez*x1%666013;
printf("%lld",rez);
}
return 0;
}