class Solution:
def removeOccurrences(self, s: str, part: str) -> str:
stack = []
n = len(part)
for ss in s:
stack.append(ss)
if len(stack) >= n and ''.join(stack[-n:]) == part:
for _ in range(n): stack.pop()
return ''.join(stack)
분명히 O(n^2)이 아닌 O(n) 테크닉이 있을텐데, 길이가 1000이라서 그냥 해버렸다. 약간 더 고민해봐야지.
댓글 0