잘 정리해보자
stack - 4889번 안정적인 문자열 본문
1. 스택이 비어있을 때 '}'를 만나면 '{'로 바꿔주는 연산을 한다.
2. 주어진 문자열의 모든 문자를 순회한 결과 스택에 '{'가 남아있는 갯수를 세어 반으로 나눈다. 그러면 '{'를 지우기 위해 필요한 '}'의 갯수가 나온다.
python
num = 1
while True :
cnt = 0
line = input().rstrip()
if line.startswith('-') : break
stack = []; flag = True
line_list = list(line)
for txt in line_list :
if not(stack) and txt == '}' :
cnt += 1
stack.append('{')
elif txt == '}' :
stack.pop()
elif txt == '{' :
stack.append(txt)
print('{0}. {1}'.format(num,cnt + int(len(stack)/2)))
num += 1
'알고리즘 > 백준' 카테고리의 다른 글
stack - 4949번 균형잡힌 세상 (0) | 2021.04.13 |
---|---|
stack - 9012번 괄호 (0) | 2021.04.13 |
Comments