Pagini recente » Cod sursa (job #2257156) | Cod sursa (job #3131295) | Cod sursa (job #2517284) | Cod sursa (job #843211) | Cod sursa (job #2469105)
#include <fstream>
#include <iomanip>
#include <algorithm>
using namespace std;
ifstream fin("arbori.in");
ofstream fout("arbori.out");
int n,m,k,i,j,s,x;
long long comb,d[95][11][95];
int mod(int a)
{
a%=m;
if(a<0) return a+m;
return a;
}
int main() {
fin>>n>>m>>k;
for(i=0;i<=n;i++) d[1][0][i]=1;
for(i=2;i<=n;i++)
{
d[i][mod(i-1)][1]=1;
for(s=2;s<=n;s++)
for(j=0;j<m;j++)
{
comb=1;
for(x=0;x*s<i;x++)
{
d[i][j][s]+=d[i-s*x][mod(j-x)][s-1]*comb;
comb*=d[s][mod(k-1)][s-1]+x;
comb/=x+1;
}
}
}
fout<<d[n][k][n-1];
return 0;
}