当前位置: 首页 > news >正文

算法训练营第三十九天(8.30)| 动态规划Part09:购买股票

 Leecode 123.买卖股票的最佳时机 III

123.买卖股票的最佳时机III 

123.买卖股票的最佳时机III 

题目地址:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台

题目类型:股票问题

class Solution {
public:int maxProfit(vector<int>& prices) {int n = prices.size();// dp[i][j]代表在第i的状态为j// j取值:0还没买过股票,1持有第一只股票,2卖出第一支股票,3持有第二支股票,4卖出第二支股票vector<vector<int>> dp(n, vector<int>(5));dp[0][1] = -prices[0];dp[0][3] = -prices[0];for (int i = 1; i < n; ++i) {dp[i][1] = max(dp[i - 1][0] - prices[i], dp[i - 1][1]);dp[i][2] = max(dp[i - 1][1] + prices[i], dp[i - 1][2]);dp[i][3] = max(dp[i - 1][2] - prices[i], dp[i - 1][3]);dp[i][4] = max(dp[i - 1][3] + prices[i], dp[i - 1][4]);}return dp[n - 1][4];}
};

 Leecode 188.买卖股票的最佳时机 IV

题目地址:​​​​​​​力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台

题目类型:股票问题

class Solution {
public:int maxProfit(int k, vector<int>& prices) {int n = prices.size();vector<vector<int>> dp(n, vector<int>(2 * k + 1, 0));for (int i = 1; i < 2 * k; i += 2) {dp[0][i] = -prices[0]; }for (int i = 1; i < n; ++i) {for (int j = 1; j < 2 * k; j += 2) {dp[i][j] = max(dp[i - 1][j - 1] - prices[i], dp[i - 1][j]);dp[i][j + 1] = max(dp[i - 1][j] + prices[i], dp[i - 1][j + 1]);}}return dp[n - 1][2 * k];}
};

 

http://www.lryc.cn/news/147628.html

相关文章:

  • renren-fast-vue环境升级后,运行正常打包后,访问页面空白
  • Uniapp笔记(三)uniapp语法2
  • windows【ftp-FTP】添加配置流程【iis服务】
  • mysql视图的创建和选项配置详解
  • Python正则表达式中re.sub自定义替换方法正确使用方法
  • hyperf 十五 验证器
  • ssh访问远程宿主机的VMWare中NAT模式下的虚拟机
  • 【一等奖方案】大规模金融图数据中异常风险行为模式挖掘赛题「NUFE」解题思路
  • npm install 报错
  • 专业人士使用的3个好用的ChatGPT提示
  • doris系列2: doris分析英国房产数据集
  • 精准运营,智能决策!解锁天翼物联水利水务感知云
  • CleanMyMac最新版4.14Mac清理软件下载安装使用教程
  • String.Format方法详解
  • 【Mysql】关联查询1对多处理
  • vue 入门案例模版
  • el-select实现懒加载
  • Java泛型机制
  • Linux CentOS安装抓包解包工具Wireshark图形化界面
  • 虹科分享 | 温度边缘效应对冻干成品含水量的影响(下)——优化和总结
  • ATF(TF-A)安全通告 TFV-1 (CVE-2016-10319)
  • 说说我最近筛简历和面试的感受。。
  • Mysql /etc/my.cnf参数详解(一)
  • 用最少数量的箭引爆气球【贪心算法】
  • Matlab论文插图绘制模板第109期—特征渲染的标签气泡散点图
  • 音视频 ffplay命令播放媒体
  • 使用Fiddler模拟网络
  • 【Axure高保真原型】多图表动态切换
  • 笔试题-访问控制修饰符范围
  • 基于飞腾芯片的设计与调试入门指导