超级楼梯
2017-01-21 18:01
155 查看
超级楼梯
Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other)
Total Submission(s) : 2 Accepted Submission(s) : 1
[align=left]Problem Description[/align]
有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第M级,共有多少种走法?
[align=left]Input[/align]
输入数据首先包含一个整数N,表示测试实例的个数,然后是N行数据,每行包含一个整数M(1<=M<=40),表示楼梯的级数。
[align=left]Output[/align]
对于每个测试实例,请输出不同走法的数量
[align=left]Sample Input[/align]
2
2
3
[align=left]Sample Output[/align]
1
2思路:n<=2的时候,直接得到,n>2的时候:状态转移方程:f
=f[n-1]+f[n-2] 可看作n-1时候再加一层楼梯与n-2时候再加2层楼梯
超级楼梯
Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other)
Total Submission(s) : 2 Accepted Submission(s) : 1
[align=left]Problem Description[/align]
有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第M级,共有多少种走法?
[align=left]Input[/align]
输入数据首先包含一个整数N,表示测试实例的个数,然后是N行数据,每行包含一个整数M(1<=M<=40),表示楼梯的级数。
[align=left]Output[/align]
对于每个测试实例,请输出不同走法的数量
[align=left]Sample Input[/align]
2
2
3
[align=left]Sample Output[/align]
1
2思路:n<=2的时候,直接得到,n>2的时候:状态转移方程:f
=f[n-1]+f[n-2] 可看作n-1时候再加一层楼梯与n-2时候再加2层楼梯
#include <iostream> #include<cstdio> using namespace std; int str[45]={0,0,1,2}; void s() { for(int i=4;i<=42;i++) str[i]=str[i-1]+str[i-2]; } int main() { s(); int n,T; scanf("%d",&T); while(T--) { scanf("%d",&n); printf("%d\n",str ); } return 0; }
相关文章推荐
- HDU 2041 超级楼梯(递推)
- 超级台阶 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 有一楼梯共m级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第m级,共有多少走法? 注:规定从一级到一
- HDOJ_ACM_超级楼梯
- H - 超级楼梯
- HDU 2041 超级楼梯
- 超级楼梯HDU2041
- HDU1004超级楼梯
- 超级楼梯(杭电2014)
- hdu 2041 超级楼梯
- HDU_2041 超级楼梯
- (hdu step 3.1.1)超级楼梯(简单递推:从第1级到第m级有多少种走法,每次只能走一步或两步)
- 超级楼梯
- HDU 超级楼梯
- YT03-递推求解课后题目-1002 超级楼梯-(6.7日-烟台大学ACM预备队解题报告)
- hdoj 超级楼梯 2041
- hdu 2041 超级楼梯(递推)
- 【杭电】[2041]超级楼梯
- hdu 水题 2041超级楼梯
- hdu超级楼梯2014
- 超级楼梯