Re: [闲聊] 每日leetcode

楼主: DJYOMIYAHINA (通通打死)   2025-01-06 22:39:09
先扫一次目前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
作者: sustainer123 (caster)   2025-01-06 22:40:00
你写的比我漂亮好多
作者: oin1104 (是oin的说)   2025-01-06 22:48:00
大师
作者: rainkaras (rainkaras)   2025-01-06 23:10:00
大师
作者: Meaverzt (Meaverzt)   2025-01-06 23:16:00
大师
作者: dont   2025-01-06 23:31:00
大师

Links booklink

Contact Us: admin [ a t ] ucptt.com