[BOJ] 9935. 문자열 폭발(python)
📌문제
💪아이디어
문자열과 폭발 문자열비교하기
폭발 문자열은 중복되는 문자가 없다.
문자열을 한 글자씩 탐색하면서 폭발 문자열의 마지막 문자와 같으면 폭발 문자열 길이만큼 이전 인덱스 문자들과 폭발 문자열을 비교한다.
같으면 폭발 문자열 길이만큼 pop한다.
다르면 해당 문자를 append한다.출력하기
문자들을 저장한 stack이 비었는지 확인하고 비었으면FLURA
, 아니면 stack 문자열을 출력한다.
🥂코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import sys; input = sys.stdin.readline
def bomb(string, target):
tmp = []
last = target[-1]
targetLength = len(target)
for s in string:
tmp.append(s)
if s == last and ''.join(tmp[-targetLength:]) == target:
for _ in range(targetLength): tmp.pop()
if tmp: return ''.join(tmp)
return "FRULA"
s = input().rstrip()
bombStr = input().rstrip()
print(bomb(s, bombStr))
This post is licensed under CC BY 4.0 by the author.
Comments powered by Disqus.