该程序查找通过使用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 送给学长毕业祝福语简短