Pagini recente » Cod sursa (job #631943) | Cod sursa (job #1379879) | Cod sursa (job #384600) | Cod sursa (job #3211930) | Cod sursa (job #482021)
Cod sursa(job #482021)
#include <stdio.h>
#include <vector>
using namespace std;
#define MOD 10007
#define MAX 330
vector <int> v;
int a[MAX][MAX];
int n, i, j, k;
int K;
int main()
{
FILE *f = fopen ("permutari2.in","r");
FILE *g = fopen ("permutari2.out","w");
fscanf (f,"%d %d", &n,&K);
v.push_back (1);
for (i=1; i<=n; ++i)
{
j = (v[i-1]*i) % MOD;
v.push_back (j);
}
a[1][1] = 1;
for (i=2; i<=n; ++i)
{
a[i][1] = v[i];
for (j=2; j<=n && j<=i; ++j)
{
a[i][j] = 0;
for (k=j-1; k<=i; ++k)
a[i][j] = (a[i][j] + a[k][j-1] * a[i-k][1]) % MOD;
a[i][1] = (a[i][1] - a[i][j] + MOD) % MOD;
}
}
fprintf(g, "%d\n",a[n][K]);
fclose(g);
fclose(f);
return 0;
}