作者DJYOMIYAHINA (通通打死)
看板Marginalman
標題Re: [閒聊] 每日leetcode
時間Mon Jan 6 22:39:09 2025
先掃一次目前cost
然後計算目前index以右跟以左 有多少'1'
就知道每動一步cost會加減多少
def minOperations(self, boxes: str) -> List[int]:
cur_cost = 0
for i in range(len(boxes)):
if boxes[i] == '1':
cur_cost += i
ones_right = boxes.count('1')
ones_left = 0
ans = []
for i in range(len(boxes)):
ones_right -= (boxes[i]=='1')
ones_left += (boxes[i]=='1')
ans.append(cur_cost)
cur_cost -= ones_right
cur_cost += ones_left
return ans
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.229.37.69 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1736174351.A.474.html
推 sustainer123: 你寫的比我漂亮好多 01/06 22:40
→ oin1104: 大師 01/06 22:48
推 rainkaras: 大師 01/06 23:10
推 Meaverzt: 大師 01/06 23:16
推 dont: 大師 01/06 23:31