HDU_2041——走楼梯,递推

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

 

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

 

Output
对于每个测试实例,请输出不同走法的数量
 

 

Sample Input
2 2 3
 

 

Sample Output
1 2
 1 #include <cstdio>
 2 int main()
 3 {
 4     int n, m, ans[41];
 5     scanf("%d",&n);
 6     ans[1]=0;ans[2]=1;ans[3]=2;
 7     for(int i=4;i<41;i++)
 8         {
 9             ans[i]=ans[i-1]+ans[i-2];    
10         }
11     while(n--)
12         {
13             scanf("%d",&m);
14             printf("%d\n",ans[m]);
15         }
16     return 0;    
17 }

 

posted @ 2013-07-10 16:59  瓶哥  Views(293)  Comments(0Edit  收藏  举报