#include #define MAX 10 int R[2][MAX]; int r(int n, int m){ int i,j,k; for ( i=0; i<=m; i++) R[1][i]=1; //Pro jedno dite jedna moznost for ( i=2; i<=n; i++ ) for( R[i%2][j=0]=0; j<=m; R[i%2][++j]=0 ) //zapomen predchozi for ( k=0; k <= j/i; k++ ) R[i%2][j]+=R[(i-1)%2][j-k*i]; //suma return R[n%2][m]; } int main(void){ int deti, darku; scanf("%d",&deti);scanf("%d",&darku); printf("%d moznosti.\n",r(deti,darku)); return 0; }