Cod sursa(job #2515462)

Utilizator rebecca0312Andrei Rebecca rebecca0312 Data 28 decembrie 2019 17:06:38
Problema Permutari2 Scor 70
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb
#include<fstream>
using namespace std;

const int MOD=10007;
const int NMAX=305;

int dp[NMAX][NMAX],perm[NMAX];

int main(){
	ifstream fin("permutari2.in");
	ofstream fout("permutari2.out");
    int n,m;
    fin>>n>>m;
    perm[1]=1;
    for(int i=2;i<=n;i++)
        perm[i]=(perm[i-1]*i)%MOD;
    dp[1][1]=1;
    for(int i=2;i<=n;i++){
        int sum=0;
        for(int j=2;j<=n;j++){
            for(int k=i-1;k>=j-1;k--){
                dp[i][j]+=(dp[k][j-1]*dp[i-k][1])%MOD;
                dp[i][j]%=MOD;
            }
            sum=(sum+dp[i][j])%MOD;
        }
        dp[i][1]=(perm[i]-sum+MOD)%MOD;
    }
    fout<<dp[n][m];
    return 0;
}