Pagini recente » Istoria paginii utilizator/hejjavictor | Cod sursa (job #2848488) | Cod sursa (job #1337049) | Cod sursa (job #1656664) | Cod sursa (job #1899145)
#include <cstdio>
#define MAXN 300
#define MOD 10007
int d[MAXN + 1][MAXN + 1];
int main(){
FILE *in = fopen("permutari2.in", "r");
int n, k, f = 1, r;
fscanf(in, "%d%d", &n, &k);
fclose(in);
int i, j, p;
d[1][1] = 1;
for(i = 2; i <= n; i++){
f = f * i % MOD;
r = 0;
for(j = 2; j <= i; j++){
for(p = 1; p < i; p++){
d[i][j] += d[p][1] * d[i - p][j - 1] % MOD;
if(d[i][j] >= MOD)
d[i][j] -= MOD;
}
r += d[i][j];
if(r >= MOD)
r -= MOD;
}
d[i][1] = (f - r + MOD) % MOD;
}
FILE *out = fopen("permutari2.out", "w");
fprintf(out, "%d", d[n][k]);
fclose(out);
return 0;
}