三步问题

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

输入:n = 3 , 输出:4, 说明:有四种走法

var waysToStep=function(n){
    let dp=[]
    dp[0]=0
    dp[1]=1
    dp[2]=2
    dp[3]=4
    for(let i=4; i<=n; i++){
        dp[i] = dp[i-1]+dp[i-2]+dp[i-3]
        dp[i] %= 1000000007
    }
    return dp[n]
}

你可能感兴趣的:(三步问题)