Pagini recente » Cod sursa (job #2802232) | Cod sursa (job #2868339) | Cod sursa (job #888238) | Cod sursa (job #2749533) | Cod sursa (job #491469)
Cod sursa(job #491469)
#include <iostream>
#include <string>
using namespace std;
#define NM 305
#define MOD 10007
int DIN[NM][NM], perms[NM];
int main()
{
int N = 300, K;
freopen ("permutari2.in", "r", stdin);
freopen ("permutari2.out", "w", stdout);
perms[0] = 1;
for (int i = 1; i <= N; ++i) perms[i] = (perms[i - 1] * i) % MOD;
DIN[0][0] = 1;
scanf ("%d %d", &N, &K);
for (int i = 1; i <= N; ++i)
{
for (int j = 1; j <= i; ++j)
for (int k = 0; k < i; ++k)
DIN[i][j] = (DIN[i][j] + DIN[i - k][j - 1] * DIN[k][1]) % MOD;
DIN[i][1] = perms[i];
for (int j = 2; j <= i; ++j) DIN[i][1] = (DIN[i][1] + MOD - DIN[i][j]) % MOD;
}
printf ("%d", DIN[N][K]);
return 0;
}