随笔分类 -  leetcode

摘要:1.leetcode121. 买卖股票的最佳时机--zhengjun 2.leetcode122. 买卖股票的最佳时机 II--zhengjun 3.leetcode123. 买卖股票的最佳时机 III--zhengjun 4.leetcode188. 买卖股票的最佳时机 IV--zhengjun 阅读全文
posted @ 2022-06-11 15:11 A_zjzj 阅读(30) 评论(0) 推荐(0) 编辑
摘要:用 fi,0 表示到了第 i 天,当前买了股票的最大利润;fi,1 表示到了第 i 天,当前没有买股票的最大利润。(还是不一定要刚好第 i 天满足这个条件,可以 1i 中的某个值满足) 显然,递推式就是 f[i][0]=max(f[ 阅读全文
posted @ 2022-06-11 15:10 A_zjzj 阅读(25) 评论(0) 推荐(0) 编辑
摘要:因为这里有一个冷冻期,这就十分不好处理。 所以我们用 fi,0 表示当前买来了股票,fi,1 表示当前没有股票,处于冷冻期,fi,2表示当前没有骨片也不处于冷冻期。(这个不一定是要在 i 这个点满足条件,也可以在 1i 之间某个值满足这个 阅读全文
posted @ 2022-06-11 15:10 A_zjzj 阅读(21) 评论(0) 推荐(0) 编辑
摘要:用 fi 表示 1i 交易一次的最大利润 用 ffi 表示 1i 交易二次的最大利润 class Solution { public: int n,f[100001],ff[100001]; int maxProfit(vector<int>& a 阅读全文
posted @ 2022-06-11 15:09 A_zjzj 阅读(17) 评论(0) 推荐(0) 编辑
摘要:先用 fi,j 表示第 i 次交易,这次交易到 j 的最大利润。 这样 fi 就可以从 fi1 那里直接得到,(参见leetcode123. 买卖股票的最佳时机 III--zhengjun 还要注意一下空间,要滚动 代码 class Solut 阅读全文
posted @ 2022-06-11 15:09 A_zjzj 阅读(24) 评论(0) 推荐(0) 编辑
摘要:思路 因为这道题可以交易任意次,所以,只要下一个比上一个大,那么肯定是取下一个更优。 如果从上一个开始买来,那么比原来的方案优了 aiai1,如果从之前的买来,那么还是比原来的方案多了 aiai1 代码 class Solution { public: int 阅读全文
posted @ 2022-06-11 15:08 A_zjzj 阅读(20) 评论(0) 推荐(0) 编辑
摘要:思路 因为只有唯一一次的交易次数,所以肯定要在前面选一个小的,在后面选一个大的。 用 minx 维护当前 1i1 的最小值,然后就直接更新答案就可以了。 代码 class Solution { public: int maxProfit(vector<int>& a) { 阅读全文
posted @ 2022-06-11 15:08 A_zjzj 阅读(16) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示