몽상실현개발주의

[BOJ] 9012 / 괄호 / Python 파이썬 본문

Algorithm PS/BOJ

[BOJ] 9012 / 괄호 / Python 파이썬

migrationArc 2021. 5. 24. 22:39

[BOJ] 9012 / 괄호 / Python 파이썬

[BOJ] 9012 / 괄호 / Python 파이썬

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

 

9012번: 괄호

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

www.acmicpc.net

 

풀이

괄호는 여는 괄호인 "(" 와 닫는 괄호인 ")" 의 개수와 괄호의 구성이 맞는 VPS 를 찾는 문제이다.

 

"(" 가 나오면 +1 을 ")" 가 나오면 -1 을 해주는 방법으로 여는 괄호와 닫는 괄호의 수를 맞추어주고,

모든 괄호가 끝나는 경우에 합이 0이 되는 경우에만 "YES" 를 출력하면 된다.

 

N = int(input())

for _ in range(N):
    PS = input()
    level = 0
    for i in range(len(PS)):
        if PS[i] == '(':
            level += 1
        else:
            level -= 1
            if level < 0:
                break
    if level:
        print("NO")
    else:
        print("YES")
Comments