[LeetCode]1578. Minimum Time to Make Rope Colorful (Medium) Python-2023.12.27
Posted on 2023-12-27 17:38 Uriel 閱讀(35) 評論(0) 編輯 收藏 引用 所屬分類: 貪心 、閑來無事重切Leet Codea-z代表不同顏色的氣球,相鄰氣球顏色相同的話每次可以保留其中一個,花費時間為二者needTime中間的較小值,問消除全部的相鄰氣球的最小總花費,貪心
#1578
#Runtime: 812 ms (Beats 62.22%)
#Memory: 22.1 MB (Beats 88.89%)
class Solution(object):
def minCost(self, colors, neededTime):
"""
:type colors: str
:type neededTime: List[int]
:rtype: int
"""
ans = 0
for i in xrange(1, len(neededTime)):
if colors[i] == colors[i - 1]:
ans += min(neededTime[i], neededTime[i - 1])
neededTime[i] = max(neededTime[i - 1], neededTime[i])
return ans
#Runtime: 812 ms (Beats 62.22%)
#Memory: 22.1 MB (Beats 88.89%)
class Solution(object):
def minCost(self, colors, neededTime):
"""
:type colors: str
:type neededTime: List[int]
:rtype: int
"""
ans = 0
for i in xrange(1, len(neededTime)):
if colors[i] == colors[i - 1]:
ans += min(neededTime[i], neededTime[i - 1])
neededTime[i] = max(neededTime[i - 1], neededTime[i])
return ans