Re: [閒聊] 每日leetcode已回收

看板Marginalman作者 (みけねこ的鼻屎)時間1年前 (2024/03/05 09:07), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串19/1548 (看更多)
https://leetcode.com/problems/minimum-length-of-string-after-deleting-similar-ends/description 1750. Minimum Length of String After Deleting Similar Ends 給你一個只包含abc的字串s,你可以對他做一系列操作,求出s的最短長度。 1.從s挑出一些相同字元的前綴 2.從s挑出一些相同字元的後綴 3.前綴和後綴不可以交錯 4.前綴和後綴的字元需要一樣 5.移除前綴和後綴 思路: 1.毫無反應就是個雙指針,有點像兩個方向的滑動窗口,先判斷前後綴字元是否相等,不 相等直接跳出。 2.如果相等的話盡可能搜集相同的字元到左邊和右邊的窗口,右邊窗口要用 <= 因為左 邊窗口會多移一格 3.反覆操作直到迴圈結束然後 r-l+1 即可 py code -------------------------------------------- class Solution: def minimumLength(self, s: str) -> int: l, r = 0, len(s) - 1 while l < r: ch = s[l] if s[r] != ch: break while l < r and s[l] == ch: l += 1 while l <= r and s[r] == ch: r -= 1 return r - l + 1 -------------------------------------------- -- https://i.imgur.com/hhXzZJ3.jpg
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.138.171.36 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1709600837.A.2F5.html
文章代碼(AID): #1bvd15Br (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1bvd15Br (Marginalman)