Pagini recente » Cod sursa (job #1215227) | Cod sursa (job #2589621) | Cod sursa (job #1124694) | Cod sursa (job #1780781) | Cod sursa (job #984229)
Cod sursa(job #984229)
#include <fstream>
#define MAXN 5005
#define NRM 666013
using namespace std;
ifstream f("kperm.in");
ofstream g("kperm.out");
int n,k,perm[MAXN],a,b,x,sol,p;
int main()
{
int i;
f>>n>>k;
perm[0]=1;
for(i=1;i<=n;i++)
perm[i]=(1LL*perm[i-1]*i)%NRM;
a=n%k;
b=k-a;
if(k%2==0){
g<<"0\n";
return 0;}
sol=perm[a]*perm[b];
x=perm[n/k];
p=1;
for(i=1;i<=b;i++)
p=(1LL*p*x)%NRM;
sol=(1LL*sol*p)%NRM;
x=perm[n/k+1];
p=1;
for(i=1;i<=a;i++)
p=(1LL*p*x)%NRM;
sol=(1LL*sol*p)%NRM;
g<<sol<<'\n';
f.close();
g.close();
return 0;
}