该程序查找通过使用Python多次在股票市场上购买可获得的最大利润
假设我们有一个按时间顺序表示公司股票价格的价格列表,我们必须找到通过多次买卖该股票可以赚取的最大利润。我们必须记住,我们必须先购买才可以出售。
因此,如果输入就像价格=[10、50、30、40、60],那么输出将是70,因为我们可以在10买,在50卖,在30买,然后在60卖。
为了解决这个问题,我们将遵循以下步骤-
prev_price:=无限
利润:=0
对于价格中的每个p,
利润:=利润+p-prev_price
如果p>prev_price,则
prev_price:=p
回报利润
让我们看下面的实现以更好地理解-
示例
class Solution:
def solve(self, prices):
prev_price = float("inf")
profit = 0
for p in prices:
if p > prev_price:
profit += p - prev_price
prev_price = p
return profit
ob = Solution()print(ob.solve([10, 50, 30, 40, 60]))输入值
[10, 50, 30, 40, 60]
输出结果
70
热门推荐
10 毛笔哥哥结婚祝福语简短
11 向国庆送祝福语简短
12 建队节祝福语简短
13 朋友喜得外孙简短祝福语
14 小店营业的祝福语简短
15 餐饮生日祝福语简短独特
16 鲜花英语祝福语卡片简短
17 男朋友暴富祝福语简短
18 婶婶拜年祝福语大全简短