[BaekJoon] 백준 9935번 : 문자열 폭발
Updated:
9935번 : 문자열 폭발
처음엔 replace 를 반복 해 폭탄을 제거하는 방법으로 접근했다.
문자열이 더이상 바뀌지 않을때 까지 replace 를 반복하는 방식이라 시간초과가 발생했다.
문자열을 한 번 만 반복하면서 문제를 해결할 방법이 필요했다.
정답은 스택을 사용하면 된다.
스택에 문자열을 하나씩 넣어가며 폭탄 문자열이 온 경우 터트리면 된다.
if __name__ == '__main__':
data = input()
bomb = input()
stack = list()
len_bomb = len(bomb)
last_bomb = bomb[-1]
for char in data:
stack.append(char)
if stack[-1] == last_bomb and bomb == ''.join(stack[-len_bomb:]):
for j in range(len_bomb):
stack.pop()
if stack:
print(''.join(stack))
else:
print('FRULA')
Leave a comment