#include int cal(int s[],int step,int stop,int max){ int i; if(step>stop) return s[stop]; s[step] = 0; for(i=step-1;i>=0&&step-i<=max;i--) {s[step]+=s; } return cal(s,step+1,stop,max);}void main(){ int step[40]; step[0] = 1; while(true) {int M,N;scanf("%d%d",&M,&N);
printf("%d\n",cal(step,1,M,N)); }} |