Pagini recente » Cod sursa (job #1402272) | Cod sursa (job #2639564) | Cod sursa (job #1771207) | Cod sursa (job #2456171) | Cod sursa (job #1824569)
#include <bits/stdc++.h>
using namespace std;
typedef long long i64;
const int MOD = 666013;
int fact[5005];
int main(void) {
ifstream fi("kperm.in");
ofstream fo("kperm.out");
int n, k;
i64 ant;
ant = 1;
fi >> n >> k;
if (k % 2 == 0) {
fo << 0 << '\n';
return 0; }
fact[0] = 1;
for (int i = 1; i <= n; ++i)
fact[i] = (1LL * i * fact[i - 1]) % MOD;
ant = (ant * fact[n % k]) % MOD;
ant = (ant * fact[k - n % k]) % MOD;
if (((k - n % k) % k) > 0)
ant = (ant * ((k - n % k) % k) * fact[n / k]) % MOD;
if (n % k > 0)
ant = (ant * (n % k) * fact[n / k + 1]) % MOD;
fo << ant << '\n';
return 0; }