九十三、动态规划系列之股票问题(下)

举报
毛利 发表于 2021/07/15 01:07:14 2021/07/15
【摘要】 @Author:Runsen 动态规划必须要面对股票系列,背包系列差不多了,那就上吧。 股票买卖这一类的问题,都是给一个输入数组,里面的每个元素表示的是每天的股价,并且你只能持有一支股票(也就是你必须在再次购买前出售掉之前的股票),一般来说有下面几种问法: 只能买卖一次 只能买卖两次 可以买卖无数次 可以买卖 k 次 买 N 次加 CD 冷却时间 ...

@Author:Runsen

动态规划必须要面对股票系列,背包系列差不多了,那就上吧。

股票买卖这一类的问题,都是给一个输入数组,里面的每个元素表示的是每天的股价,并且你只能持有一支股票(也就是你必须在再次购买前出售掉之前的股票),一般来说有下面几种问法:

  • 只能买卖一次
  • 只能买卖两次
  • 可以买卖无数次
  • 可以买卖 k 次
  • 买 N 次加 CD 冷却时间
  • 买 N 次加手续费

需要你设计一个算法去获取最大的利润。

买卖股票的最佳时机(买N次加CD冷却时间)

这是Leetcode的第309题: 买卖股票的最佳时机(买N次加CD冷却时间)

给定一个整数数组,其中第 i 个元素代表了第 i 天的股票价格 。

你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。

卖出股票后,你无法在第二天买入股票 (即冷冻期为 1 天)。
示例:

输入: [1,2,3,0,2]
输出: 3 
解释: 对应的交易状态为: [买入, 卖出, 冷冻期, 买入, 卖出]

  
 
  • 1
  • 2
  • 3

此题的关键是如何设置dp的状态? 冷冻期其实就是CD技能的时间。

dp[i][

文章来源: maoli.blog.csdn.net,作者:刘润森!,版权归原作者所有,如需转载,请联系作者。

原文链接:maoli.blog.csdn.net/article/details/115014895

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。