通过在 Python 中持有和出售利润来寻找我们可以赚取的最大利润的程序
假设我们有一个名为nums的数字列表,它按时间顺序表示一家公司的股票价格。我们每天最多可以购买一股股票,但您可以持有多只股票,并且可以在任意天数内卖出股票。返回您可以获得的最大利润。
因此,如果输入类似于nums=[3,4,7,3,5],那么输出将是9,因为我们可以在3和4时买入股票并在7时卖出。然后再次在3和以5卖出。总利润(7-3)+(7-4)+(5-3)=9。
示例
让我们看看以下实现以获得更好的理解-
def solve(nums): ans = 0 while nums: top = nums.pop() while nums and top > nums[-1]: ans += top - nums.pop() return ans nums = [3, 4, 7, 3, 5] print(solve(nums))
输入
[3, 4, 7, 3, 5]输出结果
9