LeetCode 121. Best Time to Buy and Sell Stock

和53题最大子串和一样的题目,把买入到售出当做一个子序列想就一模一样了。DP方程如下:

f[i]:以a[i]作为抛出日的最大profit (和最大字串和一样,以a[i]结尾的最大profit)

dp[i]:下标0~i过程中最大profit

令x为买入时的价格a

f[i] = max{ a[i]-x                            a[i]在交易内  在a[i]售出

                  0 }      此时x<-a[i]         a[i]在交易内  在a[i]买入并售出

dp[i] = max{ f[i]                             a[i]在交易内

                    dp[i]                           a[i]不在交易内

猜你喜欢

转载自www.cnblogs.com/hankunyan/p/8980563.html
今日推荐