[알고리즘 문제풀이] 문자열 폭발

황인권·2023년 4월 29일
0

알고리즘 문제풀이

목록 보기
73/81

문제 제목 : 문자열 폭발

문제 난이도 : 하

문제 유형 : 스택

https://www.acmicpc.net/problem/9935
시간 제한 : 2초
메모리 제한 : 128MB

문제풀이 아이디어

  • 폭발 문자열이 주어졌을 때 -> 주어진 문자열 S에 폭발 문자가 없을 때까지 문자열 탐색
  • stack을 이용하여 폭발 문자열의 길이만큼 pop() 실행
    -> 문자열의 길이가 1 ~ 36으로 작기때문에 상수 시간안에 처리될 수 있다.

< 소스코드 >

import sys

# 입력값 처리
S = sys.stdin.readline().rstrip()
explosion_string = sys.stdin.readline().rstrip()

# stack으로 문자열 폭발 구현
stack = []
ex_len = len(explosion_string)

for i in range(len(S)):
    stack.append(S[i])
    if ''.join(stack[-ex_len:]) == explosion_string:
        for _ in range(ex_len):
            stack.pop()

# 결과 출력
if stack:
    print(''.join(stack))
else:
    print('FRULA')
profile
inkwon Hwang

0개의 댓글