Algorithm/algorithm feedback

백준 9935 문자열폭발 python

개복신 개발자 2021. 9. 2. 00:46
반응형

https://www.acmicpc.net/problem/9935

 

9935번: 문자열 폭발

첫째 줄에 문자열이 주어진다. 문자열의 길이는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 둘째 줄에 폭발 문자열이 주어진다. 길이는 1보다 크거나 같고, 36보다 작거나 같다. 두 문자열은 모

www.acmicpc.net


풀이

word=input()
bomb=input()
stack=[]

for i in word:
    stack.append(i)
    if stack and stack[-1]==bomb[-1]:
        if ''.join(stack[-len(bomb):])==bomb:
            del stack[-len(bomb):]
if stack:
    for p in stack:
        print(p, end='')
else:
    print("FRULA")

-스택에 있는 문자들이 폭탄임을 알았을 때

if ''.join(stack[-len(bomb):])==bomb:

            del stack[-len(bomb):]

스택에서 폭탄 문자열의 크기 만큼의 문자를 조합했을 때 폭탄과 같다면 그 부분을 도려내는 코드이다

 

** ''.join(stack[-len(bomb):]-->-len(bomb)부터의 문자열

 

반응형