Algorithm(알고리즘)/백준

24_백준 9012번 파이썬 괄호

고로케 2021. 6. 20.
반응형

스택 문제이다.
적절하게 .append와 .pop을 해주고
조건에 따라 멈추고 비었을때 조건을 하나 더 주는 것이 포인트 (나는 stop 숫자를 넣었다)

  • 풀이
from sys import stdin


def push(x):
    stack.append(x)


def pop():
    return stack.pop()


n = int(stdin.readline())

for _ in range(n):
    pss = stdin.readline().rstrip()
    stack = []
    stop = 0
    for i in pss:
        if i == '(':
            push(i)
        elif i == ')':
            if stack:  # 스택에 요소 있으면 pop()
                pop()
            else:      # 스택이 비었으면 stop 올리고 break
                stop += 1
                break
    if stack or stop > 0: # 스택이 안비었거나 stop이 양수면 NO
        print('NO')
    else:               # 스택이 비었으면 YES
        print('YES')

 

반응형

댓글