Cod sursa(job #1208072)

Utilizator sddddgjdZloteanu Anastasia sddddgjd Data 14 iulie 2014 17:02:30
Problema Permutari2 Scor 100
Compilator c Status done
Runda Arhiva de probleme Marime 0.75 kb
#include<stdio.h>
int perm[301][301],fact[301];
int main()
{
    FILE *fin,*fout;
    fin=fopen("permutari2.in","r");
    fout=fopen("permutari2.out","w");
    int n,k;
    fscanf(fin,"%d%d",&n,&k);
    fact[1]=1;
    int i;
    for(i=2; i<=n; i++)
        fact[i]=(i*fact[i-1])%10007;
    perm[1][1]=1;
    for(i=2; i<=n; i++)
    {
        int j,sum=0;
        for(j=2; j<=i; j++)
        {
            int k;
            for(k=j-1; k<i; k++)
                perm[i][j]=(perm[i][j]+perm[k][j-1]*perm[i-k][1])%10007;
            sum=(sum+perm[i][j])%10007;
        }
        perm[i][1]=fact[i]-sum;
        perm[i][1]=(perm[i][1]+10007)%10007;
    }
    fprintf(fout,"%d",perm[n][k]);
    fclose(fin);
    fclose(fout);
    return 0;
}