首页 > 代码库 > 超级楼梯

超级楼梯

Problem Description
有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第M级,共有多少种走法?
 
Input
输入数据首先包含一个整数N,表示测试实例的个数,然后是N行数据,每行包含一个整数M(1<=M<=40),表示楼梯的级数。
 
Output
对于每个测试实例,请输出不同走法的数量
 
Sample Input
2
2
3
 
Sample Output
1
2
 
 1 #include <stdio.h>  2   3 int main(){ 4     int T; 5     int number; 6     int a; 7     int b; 8     int result; 9     int i;10     11     scanf("%d",&T);12     13     while(T--){14         scanf("%d",&number);15         16         if(number==1){17             printf("0\n");18             continue;19         }20             21         else if(number==2){22             printf("1\n");23             continue;24         }25             26         else if(number==3){27             printf("2\n");28             continue;29         }30         31         a=1;32         b=2;33         for(i=1;i<=number-3;i++){34             result=a+b;35             a=b;36             b=result;37         }38         39         printf("%d\n",result);40     }41         42         43     return 0;44 }

 

 

 

超级楼梯