[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')



Categories:

Updated:

Leave a comment