一共有 m 个楼梯,小兔子每次最多上 n 个楼梯,请问一共有多少种上法?
例如:m=5,n=2时,一共有8种;
m=4 ,n=2时,一共有5种.
我写的程序:
#include <iostream.h> double long a[41][11]; void main(){ long stair,step; long i,j,k; for(i=0;i<41;i++) for(j=0;j<11;j++) a[i][j]=0; for(i=1;i<11;i++){ a[0][i]=1; a[1][i]=1; } for(i=1;i<41;i++) a[i][1]=1; for(i=2;i<41;i++) for(j=2;j<11;j++) for(k=1;k<j+1;k++) a[i][j]=a[i][j]+a[i-k][j]; cout.setf(ios::fixed); cout.precision(0); while(cin>>stair>>step){ if(stair<1||step<1||stair>40||step>10) break; cout<<a[stair][step]<<endl; }}
请高手看看,我自己都没问题,但向判断系统提交时,就错了!