首页 > 试题广场 >

爬楼梯2

[编程题]爬楼梯2
  • 热度指数:6450 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解
在你面前有一个n阶的楼梯(n>=100且n<500),你一步只能上1阶或3阶。
请问计算出你可以采用多少种不同的方式爬完这个楼梯(到最后一层为爬完)。
(注意超大数据)

输入描述:
一个正整数,表示这个楼梯一共有多少阶


输出描述:
一个正整数,表示有多少种不同的方式爬完这个楼梯
示例1

输入

100

输出

24382819596721629

备注:
注意时间限制
头像 bao_hu_yuan_zhang
发表于 2024-02-25 15:51:17
#include <iostream> #include <vector> #include <string> #include <algorithm> using namespace std; int main() { int i=0; 展开全文
头像 牛客题解官
发表于 2020-06-05 17:31:00
题解 题目难度:中等难度 难点: 1.怎么找到不同楼梯阶数之间的转化关系。 2.可能的方式巨多,超出整型范围,需要用字符串进行存储 知识点:动态规划,大数求和 思路: 一:怎么找到不同楼梯阶数的转化关系。 1.当只有1层时只有一种走法,即f1=1。 2.当只有2层时也只有一种做法,即f2=1。 3. 展开全文
头像 跪求一个offer啊啊啊啊啊啊
发表于 2020-01-26 14:38:29
解题思路其实这跟基础的爬楼梯题目是差不多的,只不过基础的爬楼梯的题目是每次只能爬一阶或者两阶,现在只能爬一阶或者三阶 class Solution(): def JumpFloor(self,n): if n==1: return 1 展开全文