Pagini recente » Cod sursa (job #2831723) | Cod sursa (job #1261137) | Cod sursa (job #2504112) | Cod sursa (job #2699450) | Cod sursa (job #2331127)
#include <bits/stdc++.h>
using namespace std;
const int MOD = 666013;
int fr[5005];
int f[5005];
int main() {
freopen("kperm.in", "r", stdin);
freopen("kperm.out", "w", stdout);
int n, k;
scanf("%d%d", &n, &k);
if (k % 2 == 0) {
printf("0\n");
return 0;
}
for (int i = 1; i <= n; ++i) {
int p = i % k;
if (p == 0)
p = k;
fr[p]++;
}
f[0] = 1;
for (int i = 1; i <= n; ++i)
f[i] = 1LL * f[i - 1] * i % MOD;
int c1 = 0, c2 = 0;
for (int i = 1; i <= k; ++i) {
if (fr[i] == fr[1])
c1++;
else
c2++;
}
int ans = 1LL * f[c1] * f[c2] % MOD;
for (int i = 1; i <= k; ++i)
ans = 1LL * ans * f[fr[i]] % MOD;
printf("%d\n", ans);
return 0;
}