[leetcode] 309. Best Time to Buy and Sell Stock with Cooldown(medium)
2024-09-07 03:06:58
原题
思路:
状态转移
出售股票的状态,最大利润有两种可能。
一,和昨天一样不动;二,昨天持有的股票今天卖掉。
sell[i] = max(sell[i-1],buy[i-1] + prices[i]);
购买股票的状态,最大利润有两种可能。
一,和昨天一样不动;二,两天前出售,今天购买。
bdp[i] = Math.max(bdp[i-1],sell[i-2] - prices[i]);
class Solution
{
public:
int maxProfit(vector<int> &prices)
{
if (prices.size() == 0)
return 0;
int len = prices.size();
vector<int> buy(len + 1, 0), sell(len + 1, 0);
buy[1] = -prices[0];
for (int i = 2; i <= len; i++)
{
buy[i] = max(buy[i - 1], sell[i - 2] - prices[i - 1]);
sell[i] = max(sell[i - 1], buy[i - 1] + prices[i - 1]);
}
return sell[len];
}
};
最新文章
- 【Win 10 应用开发】在后台进行多媒体转码
- 联想Phab2 Pro Tango手机测评
- Android 开发必备知识:我和 Gradle 有个约会
- 重构Mybatis与Spring集成的SqlSessionFactoryBean(1)
- 4-pwd 打印当前工作目录
- 《Java中的单例模式--两种》
- SQLSERVER - Mysql 调试 笔记
- Mongodb使用基本之——安装
- 界面显示这个时间格式的js代码: 2016年1月19日 星期二 乙未(羊)年 腊月初十
- aspx利用cookie值来停止silverlight中的计时器
- UITextfield设置Placeholder颜色 控件 内边距、自适应高度
- wamp中的httpd.conf文件设置
- CSDN 正整数异或值问题
- deepin 2014 安装后 ,grub出错
- python几个排序函数 sort sorted argsort
- CJOJ 2040 【一本通】分组背包(动态规划)
- 常用css样式颜色值: 64位真彩和256位值
- python入门(11)条件判断和循环
- Django---项目
- C#图像显示实现拖拽、锚点缩放功能【转】
热门文章
- 判断当前进程是否以管理员权限运行(AllocateAndInitializeSid后,用CheckTokenMembership与AdministratorsGroup进行比较,和Delphi的那个例子还有点不一样)
- 10个有趣的javascript和css库(2019年5月最新)
- vue的checkbox或多选的select的代码例子
- Windows新终端中玩转ASCII和Emoji游戏的正确姿势
- java垃圾回收机制整理
- 系统学习 Java IO (十)----回退流 PushbackInputStream
- RocketMQ 可视化环境搭建和基础代码使用
- KVM web管理工具——WebVirtMgr
- JWT的入门案例
- Linux搭建基于BIND的DNS服务器