题解 | #跳台阶扩展问题#

跳台阶扩展问题

https://www.nowcoder.com/practice/22243d016f6b47f2a6928b4313c85387

#include <vector>
class Solution {
public:
    int jumpFloorII(int number) {
        //递推公式f(n)=f(n-1)+f(n-2)+f(n-3)+…+f(1) 推导出f(n)=f(n-1)*2
        if (number == 1) 
        {
            return 1;
        }

        if (number == 2) 
        {
            return 2;
        }

        vector<int> dp(number + 1,0);
        dp[1] = 1;
        dp[2] = 2;
        for(int i = 3;i < number + 1; i++)
        {
            dp[i] = dp[i-1] * 2;
        }

        return dp[number];
    }
};

全部评论

相关推荐

MGlory:我当初有一个老师告诉我简历要写的简单,最好只一面,项目可以写核心的,进面了自然会问你的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务