Re: [闲聊] 每日leetcode

楼主: DJYOMIYAHINA (通通打死)   2024-07-30 23:35:00
思路:
for loop 下去
每个index的cost都会是
删掉前面所有的'b'跟后面所有的'a'
所需要的次数
就取所有cost的最小值就可
def minimumDeletions(self, s: str) -> int:`
a_cnt = s.count('a')
a_cnt_cur, b_cnt_cur = 0, 0
ans = len(s)
for i,c in enumerate(s):
if c == 'a':
a_cnt_cur += 1
ans = min(ans, b_cnt_cur + (a_cnt - a_cnt_cur))
else:
ans = min(ans, b_cnt_cur + (a_cnt - a_cnt_cur))
b_cnt_cur += 1
return ans
作者: rainkaras (rainkaras)   2024-07-31 00:30:00
大师还在卷

Links booklink

Contact Us: admin [ a t ] ucptt.com