Cod sursa(job #2096359)

Utilizator tifui.alexandruTifui Ioan Alexandru tifui.alexandru Data 28 decembrie 2017 23:34:57
Problema Permutari2 Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <bits/stdc++.h>
#define Nmax 301
#define MOD 10007
using namespace std;
ifstream f("permutari2.in");
ofstream g("permutari2.out");
int pd[Nmax][Nmax];
int fct[Nmax];
int main()
{
    int n,k,i,j,t,sum;
    f>>n>>k;
    pd[1][1]=1;
    fct[0]=1;
    for(i=1;i<=n;i++)
        fct[i]=(fct[i-1]*i)%MOD;
    for(i=2;i<=n;i++)
    {
        sum=0;
        for(j=2;j<=i;j++)
        {
            for(t=j-1;t<i;t++)
                pd[i][j]=(pd[i][j]+(pd[t][j-1]*pd[i-t][1])%MOD)%MOD;
            sum=(sum+pd[i][j])%MOD;
        }
        pd[i][1]=fct[i]-sum;
        while(pd[i][1]<0)
            pd[i][1]+=MOD;
    }
    g<<pd[n][k]<<'\n';

    return 0;
}