JiSoo's Devlog

[백준 / 파이썬] 4949번 균형잡힌 세상 본문

코테준비

[백준 / 파이썬] 4949번 균형잡힌 세상

지숭숭숭 2024. 1. 13. 11:19

while(1):
    n = input()
    s = []

    if n == '.':
        break

    for i in n:
        if i == '[' or i == '(':
            s.append(i)
        elif i == ']':
            if len(s) != 0 and s[-1] == '[':
                s.pop()
            else:
                s.append(']')
                break
        elif i == ')':
            if len(s) != 0 and s[-1] == '(':
                s.pop()
            else:
                s.append(')')
                break
    if len(s) == 0:
        print('yes')
    else:
        print('no')

 

스택 사용하기

스택 리스트를 만들어서 먼저 들어온 괄호 저장하고 짝 맞는 괄호 들어오면 pop으로 리스트 비워주기

짝이 맞지 않는 게 들어오면 그대로 두기

스택 리스트가 비어 있다면 yes 출력, 비어있지 않다면 no 출력

 

728x90