刷代码随想录有感(98):动态规划——爬楼梯

作者 : admin 本文共281个字,预计阅读时间需要1分钟 发布时间: 2024-06-10 共2人阅读

题干:

刷代码随想录有感(98):动态规划——爬楼梯插图

代码:

class Solution {
public:
    int climbStairs(int n) {
        if(n == 1)return 1;
        if(n == 2)return 2;
        vectordp(n + 1);
        dp[0] = 0;
        dp[1] = 1;
        dp[2] = 2;
        for(int i = 3; i <= n; i++){
            dp[i] = dp[i - 1] + dp[i - 2];
        }
        return dp[n];
    }
};

其实就是斐波那契数列,但是我有一个疑惑,为什么dp数组大小要设置成n+1,chat的回答是dp数组索引从0开始。其实这题把dp[0]删了也能通过,但一般是默认dp[0]存在的,本题默认dp[0]存在且值为0。

本站无任何商业行为
个人在线分享 » 刷代码随想录有感(98):动态规划——爬楼梯
E-->