Skip to content

Latest commit

 

History

History

M0801_waysToStep

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

面试题 08.01. 三步问题

题目描述

三步问题。有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶、2阶或3阶。实现一种方法,计算小孩有多少种上楼梯的方式。结果可能很大,你需要对结果模1000000007。

示例1:

输入:n = 3 
输出:4
说明: 有四种走法
示例2:

输入:n = 5
输出:13

思路介绍

方法一:动态规划

解析:

因为该孩子 只能走 1阶、2阶或3阶,所以表示 该孩子 走下一步的 方式 是 前面三种的总和

思路:

    one,two,three = two,three,(one+two+three)%1000000007

复杂度计算

时间复杂度:O(n)

空间复杂度:O(1)