HDU 2041 超级楼梯

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

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

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

Sample Input

2 2 3

Sample Output

1 2

java code

简单递推
逆向思考,最后一级只能是m-1步或是m-2步
总的走法就是m-1的走法加上m-2的走法,即最后一级的前一级的走法
递推公式就是F(n) = F(n-1) + F(n-2)
令F(1) = 1 , F(2) = 2

也就是斐波拉基递推
import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner cin = new Scanner(System.in);
        int n = cin.nextInt();
        for (int j = 0; j < n; j++) {
            int m = cin.nextInt();
            int a[] = new int[45];
            for (int i = 2; i <= m; i++) {
                a[2] = 1;
                a[3] = 2;
                if (i > 3)
                    a[i] = a[i - 1] + a[i - 2];
            }
            System.out.println(a[m]);
        }
        cin.close();
    }

}```
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Problem Description有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第M级,...
    Gip_6ccf阅读 612评论 0 1
  • 题目一 “ 改革春风吹满地, 不会AC没关系; 实在不行回老家, 还有一亩三分地。 谢谢!(乐队奏乐)” 话说部分...
    彦小忠阅读 336评论 0 1
  • 递归类问题 递归类问题指后续步骤都是有基本步骤叠加而成的问题。一般问题设定为做某事有n种方法x,y。。。,每次只能...
    MachinePlay阅读 1,525评论 0 0
  • 题目:超级楼梯 链接:Problem - 2041 Problem Description: 有一楼梯共M级,刚开...
    MuteZ阅读 320评论 0 1
  • 题目链接--Problem - 2041 题目:超级楼梯 Problem Description 有一楼梯共M级,...
    天高地远_3764阅读 445评论 0 0

友情链接更多精彩内容