코딩테스트 대비/BOJ

[Baekjoon/Python] 9012번: 괄호 - 효과는 굉장했다!

bluetag_boy 2021. 10. 29. 03:18
반응형
 

9012번: 괄호

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

www.acmicpc.net

알고리즘 분류

  • 자료 구조
  • 문자열
  • 스택

 

SOLUTION

import sys

T = int(sys.stdin.readline())

for _ in range(T):
    case = sys.stdin.readline()
    sum = 0

    for i in case:
        if i == '(':
            sum += 1

        elif i == ')':
            sum += -1

        if sum < 0: # ')' 가 '(' 갯수보다 많이 나오면 더 이상 VPS가 아니기 때문에 NO 출력
            print("NO")
            break

    if sum > 0: # '(' 가 ')' 갯수보다 더 많이 나와 더 이상 VPS가 아니기 때문에 NO 출력
        print('NO')
    
    elif sum == 0: 
        print('YES')