Cod sursa(job #1899154)

Utilizator hrazvanHarsan Razvan hrazvan Data 2 martie 2017 16:00:56
Problema Permutari2 Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#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, aux;
  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 = f;
    for(j = 2; j <= i; j++){
      aux = 0;
      for(p = 1; p < i; p++)
        aux += d[p][1] * d[i - p][j - 1] % MOD;
      aux %= MOD;
      r += MOD - aux;
      d[i][j] = aux;
    }
    d[i][1] = r % MOD;
  }
  FILE *out = fopen("permutari2.out", "w");
  fprintf(out, "%d", d[n][k]);
  fclose(out);
  return 0;
}