【力扣-每日一题】714. 买卖股票的最佳时机含手续费

cpp 复制代码
class Solution {
public:
    int maxProfit(vector<int>& prices, int fee) {
        //[i][0]-不持有   [i][1]-持有
        int m=prices.size();
        vector<vector<int>> dp(m,vector<int>(2));
        dp[0][0]=0;     //初始状态
        dp[0][1]=-prices[0];
        for(int i=1;i<m;i++)
            {
                dp[i][0]=max(dp[i-1][0],dp[i-1][1]+prices[i]-fee);  //当前不持有,结果来自上一个不持有,或者上一个持有变为不持有
                dp[i][1]=max(dp[i-1][1],dp[i-1][0]-prices[i]);  //当前持有,结果来自上一个持有,或者上一个不持有变持有
            }
        return max(dp[m-1][0],dp[m-1][1]);
        //可以使用滚动变量优化内存
    }
};
相关推荐
Eloudy2 小时前
简明量子态密度矩阵理论知识点总结
算法·量子力学
点云SLAM2 小时前
Eigen 中矩阵的拼接(Concatenation)与 分块(Block Access)操作使用详解和示例演示
人工智能·线性代数·算法·矩阵·eigen数学工具库·矩阵分块操作·矩阵拼接操作
算法_小学生3 小时前
支持向量机(SVM)完整解析:原理 + 推导 + 核方法 + 实战
算法·机器学习·支持向量机
iamlujingtao4 小时前
js多边形算法:获取多边形中心点,且必定在多边形内部
javascript·算法
算法_小学生4 小时前
逻辑回归(Logistic Regression)详解:从原理到实战一站式掌握
算法·机器学习·逻辑回归
DebugKitty4 小时前
C语言14-指针4-二维数组传参、指针数组传参、viod*指针
c语言·开发语言·算法·指针传参·void指针·数组指针传参
qystca4 小时前
MC0241防火墙
算法
行然梦实7 小时前
粒子群优化算法(Particle Swarm Optimization, PSO) 求解二维 Rastrigin 函数最小值问题
算法·机器学习·数学建模
XH华7 小时前
C语言第六章函数递归
c语言·开发语言·算法
斯安7 小时前
LRU(Least Recently Used)原理及算法实现
算法