Pagini recente » Cod sursa (job #3238888) | Cod sursa (job #1394318) | Cod sursa (job #2522273) | Cod sursa (job #786013) | Cod sursa (job #466276)
Cod sursa(job #466276)
#include <cstdio>
#define FIN "permutari2.in"
#define FOUT "permutari2.out"
#define MOD 10007
#define NMAX 309
int N, K, S;
int D[NMAX][NMAX];
int fact(int X)
{
int i, P;
for (i = P = 1; i <= X; ++ i)
P = P * i % MOD;
return P;
}
int main()
{
int i, j, l;
freopen(FIN, "r", stdin);
freopen(FOUT, "w", stdout);
scanf("%d%d", &N, &K);
D[0][0] = 1;
for (i = 0; i <= K; ++ i)
for (j = i; j < N; ++ j)
if (D[i][j])
for (l = j + 1; l <= N; ++ l)
D[i + 1][l] = (D[i + 1][l] + D[i][j] * fact(l - j)) % MOD;
for (i = K - 1, S = 0; i < N; ++ i)
S = (S + D[K - 1][i] * k % MOD;
S = (S + D[K][N]) % MOD;
printf("%d\n", S);
}