• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Uriel's Corner

            Research Associate @ Harvard University / Research Interests: Computer Vision, Biomedical Image Analysis, Machine Learning
            posts - 0, comments - 50, trackbacks - 0, articles - 594
            121. Best Time to Buy and Sell Stock (Easy)
            給一列股票價格,問買賣不超過1次的情況下最多賺多少
            122. Best Time to Buy and Sell Stock III (Medium)
            給一列股票價格,問無限次買賣的情況下最多賺多少(但手里同一時刻只能持有一份股票)
            123. Best Time to Buy and Sell Stock III (Hard)
            給一列股票價格,問買賣不超過2次的情況下最多賺多少
            188. Best Time to Buy and Sell Stock IV (Hard)
            給一列股票價格,問買賣不超過k次的情況下最多賺多少
            121, 123和188類似,都是DP思想,remain[j]:已經買入j次之后最多手頭剩下的錢,profit[j]:已經賣出j次之后最多賺了多少,注意賣出前必須要先買入,188注意特判len(prices)=1的情況
            122貪心,預處理i和i+1天之間的價差,有的賺就都加上

             1 #121
             2 #Runtime: 869 ms
             3 #Memory Usage: 22.5 MB
             4 
             5 class Solution(object):
             6     def maxProfit(self, prices):
             7         """
             8         :type prices: List[int]
             9         :rtype: int
            10         """
            11         remain = 0
            12         profit = 0
            13         remain = prices[0]
            14         for i in range(1, len(prices)):               
            15             remain = min(remain, prices[i])
            16             profit = max(profit, prices[i] - remain)
            17         return profit


             1 #122
             2 #Runtime: 48 ms
             3 #Memory Usage: 14.8 MB
             4 
             5 class Solution(object):
             6     def maxProfit(self, prices):
             7         """
             8         :type prices: List[int]
             9         :rtype: int
            10         """
            11         profit = []
            12         for i in range(len(prices) - 1):
            13             profit.append(prices[i + 1] - prices[i])
            14         ans = 0
            15         for i in profit:
            16             if i > 0:
            17                 ans += i
            18         return ans
            19                 


             1 #123
             2 #Runtime: 1075 ms
             3 #Memory Usage: 25 MB
             4 
             5 class Solution(object):
             6     def maxProfit(self, prices):
             7         """
             8         :type prices: List[int]
             9         :rtype: int
            10         """
            11         remain = [0, -sys.maxint, -sys.maxint]
            12         profit = [0, -sys.maxint, -sys.maxint]
            13         
            14         for i in range(0, len(prices)):
            15             for j in range(1, 3):
            16                 remain[j] = max(remain[j], profit[j - 1] - prices[i])
            17                 profit[j] = max(profit[j], remain[j] + prices[i])
            18         return max(profit)


             1 #188
             2 #Runtime: 250 ms
             3 #Memory Usage: 13.3 MB
             4 
             5 class Solution(object):
             6     def maxProfit(self, k, prices):
             7         """
             8         :type k: int
             9         :type prices: List[int]
            10         :rtype: int
            11         """
            12         remain = [-sys.maxint] * (len(prices) + 1)
            13         profit = [-sys.maxint] * (len(prices) + 1)
            14         remain[0] = 0
            15         profit[0] = 0
            16         for i in range(0, len(prices)):
            17             for j in range(1, min(len(prices) + 1, k + 1)):
            18                 remain[j] = max(remain[j], profit[j - 1] - prices[i])
            19                 profit[j] = max(profit[j], remain[j] + prices[i])
            20         return max(profit)










            四虎国产精品免费久久| 狠狠色综合网站久久久久久久| 一本久久a久久精品综合香蕉| 18禁黄久久久AAA片| 国产成人久久激情91| 久久久久久毛片免费看| 久久久久久久人妻无码中文字幕爆| 久久精品亚洲中文字幕无码麻豆| 99久久国产综合精品成人影院| 狠狠色丁香婷婷久久综合五月| 韩国三级大全久久网站| 亚洲精品国产第一综合99久久| 久久久久亚洲AV无码网站| 久久久久亚洲精品中文字幕| 亚洲国产精品久久久天堂| 久久精品亚洲男人的天堂| 国产91久久精品一区二区| 一本色道久久88—综合亚洲精品 | 亚洲欧美另类日本久久国产真实乱对白| 三级韩国一区久久二区综合| 久久综合久久综合久久| 97精品依人久久久大香线蕉97 | 99久久免费国产特黄| 色妞色综合久久夜夜| 狠狠人妻久久久久久综合| 久久本道伊人久久| 91精品国产高清久久久久久io| 精品伊人久久久| 奇米影视7777久久精品人人爽| 日韩va亚洲va欧美va久久| 99久久99久久精品国产片| 久久青青草原精品影院| 久久国产精品一国产精品金尊| 亚洲精品乱码久久久久久久久久久久 | 久久高潮一级毛片免费| 大香网伊人久久综合网2020| 久久综合中文字幕| 国产成人综合久久精品尤物| 精品久久国产一区二区三区香蕉 | 久久99国产精品久久久| 国产一级持黄大片99久久 |