HDOj 超级楼梯

原创 2015年11月20日 11:45:34

超级楼梯

Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other)
Total Submission(s) : 149 Accepted Submission(s) : 62
Problem Description
有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第M级,共有多少种走法?

Input

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

Output

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

Sample Input

2
2
3

Sample Output

1
2


算法思想:
用递归来做(fibonacii数列的规律)
即后一项等于前两项的和


算法1:

#include<iostream>
using namespace std;

int main()
{
    int n,m,a[40];
    a[0]=0;a[1]=1;a[2]=2;
    for(int i=3;i<40;i++){
        a[i]=a[i-1]+a[i-2];
    }
    cin>>n;
    while(n--){
        cin>>m;
        cout<<a[m-1]<<endl;
    }
    return 0;
}

算法2:

#include<iostream>
using namespace std;

int stair(int m){
    if(m==1) return 0;
    if(m==2) return 1;
    if(m==3) return 2;
    else return stair(m-1)+stair(m-2);
}

int main()
{
    int n,m;
    cin>>n;
    while(n--){
        cin>>m;
        cout<<stair(m)<<endl;
    }
    return 0;
}

算法2显示the time limited错误,暂时不知道为什么。

2015-10-20


hdoj 2041超级楼梯 解题报告(递推题)

http://acm.hdu.edu.cn/showproblem.php?pid=2041 Problem Description有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上...
  • a576323437
  • a576323437
  • 2011年01月25日 20:29
  • 1832

HDU2041 超级楼梯【递推+水题】

超级楼梯 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submi...
  • tigerisland45
  • tigerisland45
  • 2016年07月08日 12:17
  • 2638

Hdu 2041 - 超级楼梯

简单递推 逆向思考,最后一级只能是m-1步或是m-2步 总的走法就是m-1的走法加上m-2的走法,即最后一级的前一级的走法 递推公式就是F(n) = F(n-1) + F(n-2) 令F(1) = 1...
  • Chuck_0430
  • Chuck_0430
  • 2013年01月29日 00:17
  • 2416

hdu 2014 超级楼梯

简单dp,逆向思维: m阶的楼梯,最后一次只能是在m-1阶或者m-2阶的楼梯上,所以总的方法就是走到m-1阶楼梯的走法加上m-2的走法,即: F(n)=F(n-1)+F(n-2);...
  • L954688947
  • L954688947
  • 2015年10月19日 23:24
  • 647

HDOJ 超级楼梯

问题及代码: /*超级楼梯 Problem Description 有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第M级,共有多少种走法? Input 输入数据首先包含一个...
  • linan_141
  • linan_141
  • 2015年06月07日 09:43
  • 276

hdoj 超级楼梯

超级楼梯 Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Submi...
  • R1986799047
  • R1986799047
  • 2014年12月01日 14:07
  • 389

hdoj 超级楼梯

Problem Description 有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第M级,共有多少种走法? Input 输入数据首先包含一个整数N,表示测试实例的个数,然后...
  • zhaihao1996
  • zhaihao1996
  • 2015年11月25日 12:51
  • 172

2041超级楼梯(简单递推)

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission...
  • qq_34594236
  • qq_34594236
  • 2016年06月28日 14:56
  • 421

ACM-超级楼梯

Problem Description 有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第M级,共有多少种走法?   Input 输入数据首先包含一个整数N...
  • gzj_1101
  • gzj_1101
  • 2015年11月15日 09:52
  • 770

H-超级楼梯

思想为逆向思维,要走上最后一级,则需走上倒数第一或第二级,则其种数为两种可能相加,两种又可分为四种,则递推,直接暴力递推不可,试过发现TE,然后去学习了一下,改成了数组,有保存值,好吧还是TE,最后换...
  • nwpuyxf
  • nwpuyxf
  • 2018年01月15日 12:52
  • 22
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:HDOj 超级楼梯
举报原因:
原因补充:

(最多只允许输入30个字)