본문 바로가기

코딩

[Python] 백준 #9012. 괄호

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

 

9012번: 괄호

괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고

www.acmicpc.net

 

# 9012 - Python 3

import sys
from collections import deque

input = sys.stdin.readline

for _ in range(int(input())):
    x = input().strip()
    s = deque()
    cnt = 0

    for i in x:
        if i == '(':                
            s.append(i)             # '('인 경우 s에 저장
        else:                       # ')'인 경우, s 안에 '('가 몇 개 저장되었는지에 따라 다르게 판단
            if len(s) == 0:         # '('가 없다면 cnt += 1    
                cnt += 1            
            else:                   # '('가 있다면 '(' 1 개를 pop 해줌
                s.pop()

    if len(s) == 0 and cnt == 0:
        print("YES")
    else:
        print("NO")