1. 题目描述

给定一个整数数组 prices,其中第 i 个元素代表了第 i 天的股票价格 ;非负整数 fee 代表了交易股票的手续费用。

你可以无限次地完成交易,但是你每次交易都需要付手续费。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。

返回获得利润的最大值。

示例 1:

输入: prices = [1, 3, 2, 8, 4, 9], fee = 2
输出: 8
解释: 能够达到的最大利润:
在此处买入 prices[0] = 1
在此处卖出 prices[3] = 8
在此处买入 prices[4] = 4
在此处卖出 prices[5] = 9
总利润: ((8 - 1) - 2) + ((9 - 4) - 2) = 8.

注意:

0 < prices.length <= 50000.
0 < prices[i] < 50000.
0 <= fee < 50000.

2. 思路

大致思路和股票问题系列第二题类似:买卖股票的最佳时机||
因为有手续费,因此我们假设当买入股票的时候,需要支付费用。那么状态之间的转换方程,需要进行改变:

由于股票交易次数不限制,因此不需要考虑k和k-1的问题。

2.1 代码

class Solution:def maxProfit(self, prices: List[int], fee: int) -> int:if len(prices) == 0:return 0n = len(prices)dp_i_0 = 0dp_i_1 = -prices[0]-feefor i in range(1,n):dp_i_0 = max(dp_i_0,dp_i_1+prices[i])dp_i_1 = max(dp_i_1,dp_i_0-prices[i]-fee)return dp_i_0

leetcode:买卖股票的最佳时机含手续费(python)相关推荐

  1. 【LeetCode】买卖股票的最佳时机含手续费 [M](动态规划)

    714. 买卖股票的最佳时机含手续费 - 力扣(LeetCode) 一.题目 给定一个整数数组 prices,其中 prices[i]表示第 i 天的股票价格 :整数 fee 代表了交易股票的手续费用 ...

  2. 【算法】贪心算法:LeetCode 714 买卖股票的最佳时机含手续费 、LeetCode 968 监控二叉树

    LeetCode 714 买卖股票的最佳时机含手续费 (中等) 题目 描述 给定一个整数数组 prices,其中第 i 个元素代表了第 i 天的股票价格 :整数 fee 代表了交易股票的手续费用. 你 ...

  3. leetcode 714 买卖股票的最佳时机含手续费-动态规划(中等)

    714 买卖股票的最佳时机含手续费-动态规划(中等) 给定一个整数数组 prices,其中第 i 个元素代表了第 i 天的股票价格 :非负整数 fee 代表了交易股票的手续费用. 你可以无限次地完成交 ...

  4. 模拟卷Leetcode【普通】714. 买卖股票的最佳时机含手续费

    714. 买卖股票的最佳时机含手续费 给定一个整数数组 prices,其中第 i 个元素代表了第 i 天的股票价格 :整数 fee 代表了交易股票的手续费用. 你可以无限次地完成交易,但是你每笔交易都 ...

  5. 【贪心算法】Leetcode 714. 买卖股票的最佳时机含手续费

    [贪心算法]Leetcode 714. 买卖股票的最佳时机含手续费 题目 给定一个整数数组 prices,其中 prices[i]表示第 i 天的股票价格 :整数 fee 代表了交易股票的手续费用. ...

  6. LeetCode 714 买卖股票的最佳时机含手续费

    714. 买卖股票的最佳时机含手续费 题目 思路 过一遍,记录第i天是否买入和卖出的最值. 代码 class Solution {public:int maxProfit(vector<int& ...

  7. Leetcode刷题笔记 714. 买卖股票的最佳时机含手续费

    714. 买卖股票的最佳时机含手续费 时间:2020年12月17日 知识点:动态规划 题目链接:https://leetcode-cn.com/problems/best-time-to-buy-an ...

  8. 【LeetCode每日一题】——714.买卖股票的最佳时机含手续费

    文章目录 一[题目类别] 二[题目难度] 三[题目编号] 四[题目描述] 五[题目示例] 六[解题思路] 七[题目提示] 八[时间频度] 九[代码实现] 十[提交结果] 一[题目类别] 贪心算法 二[ ...

  9. leetcode(力扣)738. 单调递增的数字||714. 买卖股票的最佳时机含手续费

    738. 单调递增的数字 class Solution { public:int monotoneIncreasingDigits(int n) {string strNum=to_string(n) ...

  10. 【leetcode】714.买卖股票的最佳时机含手续费

    题目详见 714.买卖股票的最佳时机含手续费 题目难点 买入和卖出时机的位置怎么算 解决方案 买入点:最低价格就行 卖出点:例如1.6.8 fee=2,很明显在1买入,在8卖出,那怎么用算法来判断呢, ...

最新文章

  1. RabbitMQ学习笔记一:本地Windows环境安装RabbitMQ Server
  2. Linux ssh命令无法使用
  3. 小公司要不要做KPI
  4. android ViewPager之PagerAdapter中View的重用
  5. HDU 3534 Tree (经典树形dp)
  6. CodeForces 901D Weighting a Tree(结论)
  7. python整形魔法_python 魔法方法
  8. springboot项目接入配置中心,实现@ConfigurationProperties的bean属性刷新方案
  9. Teams 可被滥用于安装恶意软件,微软或不打算修复
  10. 提高网站打开速度的18点要素和五点建议
  11. 8psk信号的载波调制 matlab,EDGE系统中GMSK和8psk调制的应用原理
  12. java冻结jsp首行_收藏的 处理jsp首行 报错问题
  13. 【2021年】百度搜索词获取,获取百度搜索的关键词
  14. 异常检测——线性模型
  15. 1005打印任务取消不了 hp_Windows10+HP M176N奇怪的发送打印命令不执行任务就消失的问题...
  16. dlib php,图片人脸检测——Dlib版(四)
  17. python 听歌识曲_Shazam听歌识曲算法解析+python实现-3 检索歌曲
  18. dw中css目标规则命名,css 常用样式命名规则
  19. veracrypt取消加密卷_VeraCrypt 加密个人隐私(便携式 )
  20. QT 软键盘实现

热门文章

  1. 木马专杀软件测试自学,5款免费杀软“紫狐”木马查杀测试
  2. SoftICE使用(2)-网络远程调试zz xfocus
  3. 超炫酷的Bat脚本入门教程
  4. 聊聊运营商对UDP的QoS限制和应对
  5. X86、X64和X86_64区别
  6. 服务器 uefi 安装win7系统,uefi模式安装win7最新教程
  7. 【数模之数据分析-1】
  8. 多伦多大学计算机ib成绩要求,IB学生要考多少分才能进入世界一流名校就读?这里有份IB要求一览表请收好!...
  9. 文献整理和论文阅读方法
  10. 霹雳吧啦Wz语义分割学习笔记P11