问题 D: 天梯-BigInteger类的应用

问题 D: 天梯-BigInteger类的应用,第1张

题目描述

Mr. Strong一步最多可以登上4阶楼梯;请编程求解 Mr. Strong一共有多少种方法登上阶梯数为 n 的楼梯?

输入

输入整数n, 1 =< n <= 20000;

输出

Mr. Strong登梯方式的总数

样例输入

4

样例输出

8
提示

如果登上5级楼梯,Mr. Strong 可以有以下 15 种攀登方式(每一行代表一种攀登方式,一行中的整数 代表 每一步依次登梯的级数):
1 1 1 1 1
1 1 1 2
1 1 2 1
1 1 3
1 2 1 1
1 2 2
1 3 1
1 4
2 1 1 1
2 1 2
2 2 1
2 3
3 1 1
3 2
4 1


请考虑:  登上n级楼梯的方法数 与 登上n-1, n-2, n-3, n-4级楼梯的方法数 之间的关系?

import java.util.*;
import java.math.BigInteger;
 
public class Main {
    public static void main(String[] args){
        Scanner reader = new Scanner(System.in);
        int n = reader.nextInt();
        BigInteger []a = new BigInteger [n+4];
        a[1] = BigInteger.valueOf(1);
        a[2] = BigInteger.valueOf(2);
        a[3] = BigInteger.valueOf(4);
        a[4] = BigInteger.valueOf(8);
        if(n == 1)
            System.out.println(1);
        else if(n == 2)
            System.out.println(2);
        else if(n == 3)
            System.out.println(4);
        else if(n == 4)
            System.out.println(8);
        else{
            for(int i=5;i

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/727653.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-26
下一篇 2022-04-26

发表评论

登录后才能评论

评论列表(0条)