在一家农场,有一群牛,每头牛都有一个市场价值,这个价值每天都会变化。农场主人可以选择在某一天买入一头牛,然后在某一天卖出。但是,农场主人最多只能进行三次买卖(买入和卖出算一次买卖),并且在买入新的牛之前必须已经卖掉手头上的牛。 现给你一个数组,表示每一天牛的市场价值,设计一个算法来计算农场主人最多能获得多少利润。
区块链毕设网qklbishe.com为您提供问题的解答
在一家农场,有一群牛,每头牛都有一个市场价值,这个价值每天都会变化。农场主人可以选择在某一天买入一头牛,然后在某一天卖出。但是,农场主人最多只能进行三次买卖(买入和卖出算一次买卖),并且在买入新的牛之前必须已经卖掉手头上的牛。
现给你一个数组,表示每一天牛的市场价值,设计一个算法来计算农场主人最多能获得多少利润。
import sys class Solution: def maxProfit(self , prices: List[int]) -> int: # write code here # 交易次数n n = 3 # dp[i][j][2]: 第i天,买卖j次,状态[0]表示不持有, # 状态[1]表示持有 -> 可以获得的最高利润 dp = [[[0 for _ in range(2)] for _ in range(n+1)] for _ in range(len(prices)+1)] # 初始化 第0天 for i in range(4): dp[0][i][1] = -sys.maxsize-1 for i in range(1, len(prices) + 1): for j in range(1, 4): # 保持不买或者卖出 dp[i][j][0] = max(dp[i-1][j][0], dp[i-1][j][1] + prices[i-1]) # 保持拥有或者买入 dp[i][j][1] = max(dp[i-1][j][1], dp[i-1][j-1][0] - prices[i-1]) return dp[-1][-1][0]
三维dp
24:42
以上就是关于问题在一家农场,有一群牛,每头牛都有一个市场价值,这个价值每天都会变化。农场主人可以选择在某一天买入一头牛,然后在某一天卖出。但是,农场主人最多只能进行三次买卖(买入和卖出算一次买卖),并且在买入新的牛之前必须已经卖掉手头上的牛。 现给你一个数组,表示每一天牛的市场价值,设计一个算法来计算农场主人最多能获得多少利润。的答案
欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。
区块链NFT链游项目方科学家脚本开发培训
从业7年-专注一级市场
微信:btc9767
TELEGRAM :https://t.me/btcok9
具体资料介绍
web3的一级市场千万收益的逻辑
进群点我
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 在一家农场,有一群牛,每头牛都有一个市场价值,这个价值每天都会变化。农场主人可以选择在某一天买入一头牛,然后在某一天卖出。但是,农场主人最多只能进行三次买卖(买入和卖出算一次买卖),并且在买入新的牛之前必须已经卖掉手头上的牛。 现给你一个数组,表示每一天牛的市场价值,设计一个算法来计算农场主人最多能获得多少利润。
微信:btc9767
TELEGRAM :https://t.me/btcok9
具体资料介绍
web3的一级市场千万收益的逻辑
进群点我
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 在一家农场,有一群牛,每头牛都有一个市场价值,这个价值每天都会变化。农场主人可以选择在某一天买入一头牛,然后在某一天卖出。但是,农场主人最多只能进行三次买卖(买入和卖出算一次买卖),并且在买入新的牛之前必须已经卖掉手头上的牛。 现给你一个数组,表示每一天牛的市场价值,设计一个算法来计算农场主人最多能获得多少利润。
进群点我
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 在一家农场,有一群牛,每头牛都有一个市场价值,这个价值每天都会变化。农场主人可以选择在某一天买入一头牛,然后在某一天卖出。但是,农场主人最多只能进行三次买卖(买入和卖出算一次买卖),并且在买入新的牛之前必须已经卖掉手头上的牛。 现给你一个数组,表示每一天牛的市场价值,设计一个算法来计算农场主人最多能获得多少利润。
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 在一家农场,有一群牛,每头牛都有一个市场价值,这个价值每天都会变化。农场主人可以选择在某一天买入一头牛,然后在某一天卖出。但是,农场主人最多只能进行三次买卖(买入和卖出算一次买卖),并且在买入新的牛之前必须已经卖掉手头上的牛。 现给你一个数组,表示每一天牛的市场价值,设计一个算法来计算农场主人最多能获得多少利润。