亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

309. Best Time to Buy and Sell Stock with Cooldown -Medium

2019-11-10 19:16:36
字體:
來源:轉載
供稿:網友

Question

Say you have an array for which the ith element is the PRice of a given stock on day i.

Design an algorithm to find the maximum profit. You may complete as many transactions as you like (ie, buy one and sell one share of the stock multiple times) with the following restrictions:

You may not engage in multiple transactions at the same time (ie, you must sell the stock before you buy again). After you sell your stock, you cannot buy stock on next day. (ie, cooldown 1 day)

現在給你一個數組,第i個元素代表第i天的股票價格。設計出一個算法去找到最大的收益。允許多次交易,但是你必須在第二次買股票前賣掉股票,而且當你賣掉股票,第二天你不被允許買股票(冷卻時間)

Example

prices = [1, 2, 3, 0, 2] maxProfit = 3 transactions = [buy, sell, cooldown, buy, sell]

Solution

動態規劃解。思考問題仍然從如何找到第i天和前一天的最大收益的關系出發。我們可以發現每一天都有三種狀態,即買(buy),賣(sell),不買不賣(rest),那么其實我們可以分別記錄第i天buy, sell, rest的最大收益記錄下來,然后根據它們之間的關系更新。這個思路完全沒有問題,但是在實際操作的時候我們會發現,rest其實也要分兩種情況。

第一種是sell后,buy前的rest,因為sell后不能馬上buy,所以如果第i天是rest_before_buy,那么第i - 1天只能是rest_before_buy本身或者sell第二種是buy后,sell前的rest,如果第i天是rest_after_buy,那么第i - 1天只能是rest_after_buy或者buy

所以這兩種rest并不是同一種,因此其實每一天有四種狀態,即rest_before_buy, buy, rest_after_buysell, sell,關系如下圖

關系圖

關系式為:

buy[i] = rest_before_buy[i - 1] - prices[i]

rest_after_buy[i] = max(buy[i - 1], rest_after_buy[i - 1])

sell[i] = max(buy[i - 1] + prices[i], rest_after_buy[i - 1] + prices[i])

rest_before_buy[i] = max(sell[i - 1], rest_before_buy[i - 1])

初始化為:

buy[0] = -prices[0] # 第一天買進花費prices[0]

rest_after_buy[0] = -prices[0] # 因為是不買不賣,所以和buy[0]相同

sell[0] = - (prices[0] + 1) # 第一天不可能賣的,所以設一個非常小的值

rest_before_buy = 0 # 第一天如果不買不賣,花費0

代碼

class Solution(object): def maxProfit(self, prices): """ :type prices: List[int] :rtype: int """ if len(prices) == 0: return 0 sell = [0] * len(prices) buy = [0] * len(prices) rest_before_buy = [0] * len(prices) rest_after_buy = [0] * len(prices) # 初始化 buy[0] = - prices[0] sell[0] = - (prices[0] + 1) rest_after_buy[0] = - prices[0] for index_p in range(1, len(prices)): buy[index_p] = rest_before_buy[index_p - 1] - prices[index_p] rest_after_buy[index_p] = max(buy[index_p - 1], rest_after_buy[index_p - 1]) sell[index_p] = max(rest_after_buy[index_p - 1] + prices[index_p], buy[index_p - 1] + prices[index_p]) rest_before_buy[index_p] = max(sell[index_p - 1], rest_before_buy[index_p - 1]) # 因為最后一天buy或者rest_after_buy(有股票沒賣掉)都不可能利益最大的,所以不需比較 return max(sell[-1], rest_before_buy[-1])
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品网址在线| 色妞欧美日韩在线| 国产原创欧美精品| 热99久久精品| 亚洲欧美在线磁力| 欧美一性一乱一交一视频| 538国产精品视频一区二区| 亚洲国内高清视频| 欧美成人性生活| 国产mv免费观看入口亚洲| 欧美一级电影久久| 欧美午夜视频在线观看| 亚洲直播在线一区| 日韩中文在线中文网在线观看| 日韩网站免费观看高清| 成人激情视频在线| 亚洲性日韩精品一区二区| 国产精品久久中文| 国产日韩在线一区| 欧美在线一区二区视频| 亚洲欧美日韩国产精品| 久久视频免费在线播放| 欧美视频一二三| 66m—66摸成人免费视频| 亚洲视频免费一区| 91精品在线观看视频| 午夜精品国产精品大乳美女| 亚洲国产精品国自产拍av秋霞| 国产精品啪视频| 92福利视频午夜1000合集在线观看| 日韩亚洲国产中文字幕| 久热99视频在线观看| 亚洲毛片在线免费观看| 国产成人精品视频在线| 国产精品最新在线观看| 日韩风俗一区 二区| 精品国产一区二区三区在线观看| 欧美国产第一页| 亚洲人午夜精品| 久久久噜久噜久久综合| 久久久久国产视频| 欧美激情亚洲精品| 国产97在线亚洲| 精品国产91乱高清在线观看| 国产中文日韩欧美| 成人黄色大片在线免费观看| 亚洲字幕在线观看| 神马久久久久久| 日本免费久久高清视频| 国产视频观看一区| 97久久国产精品| 欧美亚洲一区在线| 日本91av在线播放| 成人日韩在线电影| 国产精品久久久精品| 国产主播欧美精品| 欧美有码在线观看视频| 国产精品a久久久久久| 亚洲欧美另类中文字幕| 久久久久久亚洲精品不卡| 久久99亚洲热视| 欧美日韩国产区| 亚洲精品mp4| 欧美日韩国产一区二区| 欧美激情欧美狂野欧美精品| 国产精品视频xxx| 国产91久久婷婷一区二区| 中文字幕在线成人| 欧美日韩国产专区| 亚洲精品国产综合区久久久久久久| 国产精品视频网址| 久久97久久97精品免视看| 富二代精品短视频| 欧美亚洲另类视频| 97色在线观看| 91日本在线观看| 狠狠爱在线视频一区| 精品久久香蕉国产线看观看gif| 欧美整片在线观看| 欧美精品一区三区| 中文字幕av一区中文字幕天堂| 国外成人在线直播| 在线精品国产成人综合| 欧美精品免费在线观看| 日韩中文视频免费在线观看| 中文字幕亚洲欧美日韩在线不卡| 91久久在线播放| 九九久久久久久久久激情| 97av在线影院| 色婷婷综合成人| 亚洲最大成人在线| 91午夜在线播放| 最近2019中文字幕mv免费看| 57pao成人永久免费视频| 国产精品美女久久久久av超清| 久久亚洲综合国产精品99麻豆精品福利| 成人免费在线网址| 中文字幕精品网| 国产ts一区二区| 日本国产精品视频| 亚洲va欧美va国产综合剧情| 久久久久一本一区二区青青蜜月| 日韩在线免费观看视频| 九九九久久久久久| 亚洲精品99久久久久| 8x海外华人永久免费日韩内陆视频| 爱福利视频一区| 精品国产一区二区三区在线观看| 久久久久久久久久久91| 欧美精品videos| 777国产偷窥盗摄精品视频| 亚洲女人天堂av| 国产日本欧美在线观看| 久久久www成人免费精品张筱雨| 色婷婷综合久久久久| 日韩二区三区在线| 亚洲欧洲国产精品| 欧美激情2020午夜免费观看| 国模极品一区二区三区| 92福利视频午夜1000合集在线观看| 色琪琪综合男人的天堂aⅴ视频| 久久久久女教师免费一区| 亚洲午夜激情免费视频| 青青精品视频播放| 国产激情视频一区| 亚洲xxxx妇黄裸体| 欧美区在线播放| 国内伊人久久久久久网站视频| 精品人伦一区二区三区蜜桃免费| 国产精品一二三在线| 久久亚洲精品毛片| 国产福利精品av综合导导航| 97久久久久久| 在线看国产精品| 亚洲国模精品私拍| 久久综合国产精品台湾中文娱乐网| 欧美在线视频导航| 亚洲国产日韩欧美在线动漫| 欧美国产亚洲精品久久久8v| 国产精品一区二区av影院萌芽| 国产精品成人va在线观看| 国产91精品久久久久| 日韩中文字幕不卡视频| 欧美精品日韩www.p站| 色综合久久中文字幕综合网小说| 久久久精品日本| 国产精品欧美日韩一区二区| 91久久精品美女高潮| 色婷婷综合久久久久中文字幕1| 国产精品女主播视频| 欧美日韩国产综合新一区| 国产一区二区三区四区福利| 亚洲香蕉伊综合在人在线视看| 成人精品久久久| 久久久久久网址| 久久综合国产精品台湾中文娱乐网| 亚洲 日韩 国产第一| 国产suv精品一区二区三区88区| 欧美精品一本久久男人的天堂| 亚洲综合大片69999| 最新日韩中文字幕| 日韩美女av在线免费观看| 最新69国产成人精品视频免费| 色播久久人人爽人人爽人人片视av|