首页 > ACM题库 > HDU-杭电 > hdu 2041 超级楼梯-递推-[解题报告]C++
2013
12-26

hdu 2041 超级楼梯-递推-[解题报告]C++

超级楼梯

问题描述 :

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

输入:

输入数据首先包含一个整数N,表示测试实例的个数,然后是N行数据,每行包含一个整数M(1<=M<=40),表示楼梯的级数。

输出:

输入数据首先包含一个整数N,表示测试实例的个数,然后是N行数据,每行包含一个整数M(1<=M<=40),表示楼梯的级数。

样例输入:

2
2
3

样例输出:

1
2

#include<iostream>
using namespace std;
int main()
{
	int n,m,i;
	int da[51];
	cin>>n;
	da[1] = 0;
	da[2] = 1;
	da[3] = 2;
	for(i = 4; i <= 40; i++)
		da[i] = da[i-1] + da[i-2];
	while(n--)
	{
		cin>>m;
		cout<<da[m]<<endl;
	}
	return 0;
}

 

解题转自:http://blog.csdn.net/ye_scofield/article/details/8235457