买卖股票的最佳时期含冷冻期(leetcode)

个人主页:Lei宝啊

愿所有美好如期而遇


也就有这样的状态转移方程:

  • 买入:dpi0 = max(dpi-11 - pricesi, dpi-10);
  • 可买入:dpi1 = max(dpi-11, dpi-12);
  • 冷冻期:dpi2 = dpi-10 + pricesi;
cpp 复制代码
class Solution 
{
public:
    int maxProfit(vector<int>& prices) 
    {
        vector<vector<int>> dp(prices.size(), vector<int>(3));
        dp[0][0] = -prices[0];

        for(int i=1; i<prices.size(); i++)
        {
            dp[i][0] = max(dp[i-1][1] - prices[i], dp[i-1][0]);
            dp[i][1] = max(dp[i-1][1], dp[i-1][2]);
            dp[i][2] = dp[i-1][0] + prices[i];
        }

        int ret = max(dp[prices.size()-1][1], dp[prices.size()-1][2]);
        return ret;
    }
};
相关推荐
wabs6664 小时前
关于图论【广度优先搜索的理论基础】
算法·图论·宽度优先
孤魂2334 小时前
逻辑回归算法
算法·机器学习·逻辑回归
weixin_377634844 小时前
【多模型预测】 如何合理融合多个预测分值
算法·机器学习·概率论·预测·agent预测
无风听海4 小时前
Claude Agent Skills 的四种设计模式;从渐进式披露到最小权限
java·算法·设计模式
37.2℃9955 小时前
专业的Claude Design解决方案
前端·算法
め.5 小时前
定点数运算库
算法·unity
dyxal5 小时前
最长公共子序列(LCS)
python·算法
稚南城才子,乌衣巷风流7 小时前
ST 表(Sparse Table)算法详解:原理、实现与应用
算法
hold?fish:palm7 小时前
9 找到字符串中所有字母异位词
c++·算法·leetcode
Sw1zzle8 小时前
算法入门(六):贪心算法 - 基础入门(Leetcode 121/455/860/376/738)
算法·leetcode·贪心算法