day55 动态规划part12 代码随想录算法训练营 714. 买卖股票的最佳时机含手续费
题目:714. 买卖股票的最佳时机含手续费
我的感悟:
- 终于能秒1道了
理解难点:
- 跟之前一样,多了一个手续费而已
听课笔记:
我的代码:
class Solution:
def maxProfit(self, prices: List[int], fee: int) -> int:
# 简单
dp = [[0] *2 for _ in range(len(prices))]
# 初始化
dp[0][0] = -prices[0]
dp[0][1] = 0
# 遍历
for i in range(1,len(prices)):
dp[i][0] = max(dp[i-1][0],dp[i-1][1]-prices[i])
dp[i][1] = max(dp[i-1][1],dp[i-1][0]+prices[i]-fee)
return dp[-1][1]
通过截图:
老师代码:
扩展写法:
资料:
相对122.买卖股票的最佳时机II ,本题只需要在计算卖出操作的时候减去手续费就可以了,代码几乎是一样的,可以尝试自己做一做。