HDU2040有一楼梯共M级,刚开始时你在第一级

有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第M级,共有多少种走法?

此道题使用类似斐波那契数列方法运用迭代进行操作如果递归会超时

#include 
int main() 
{ 
	int N=0,M=0,i=0,sum=0,a[41]={0}; 
	scanf("%d",&N);
	a[1]=1; 
	a[2]=1;
	for(i=3;i<=40;i++) //将前40个数储存起来
		a[i]=a[i-1]+a[i-2];
	while(N--) 
	{ 
		scanf("%d",&M);
		printf("%d\n",a[M]);
	} 
	return 1; 
}


你可能感兴趣的:(HDU2040有一楼梯共M级,刚开始时你在第一级)