IT/알고리즘

[백준 Python] 9012번 괄호

와잉 2022. 2. 6. 11:01

백준 파이썬 9012번 괄호

Silver IV

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

 

9012번: 괄호

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

www.acmicpc.net

n = int(input())
e = []
for i in range(n):
    e.append(input())
for j in e:
    l = 0
    r = 0
    left = j.count("(")
    right = j.count(")")
    if left == right:   #"("와 ")"의 수가 같을 때
        while r<=l:
            for k in j:
                if k == "(":
                    l += 1
                else:
                    r += 1
                if r > l:  #")"가 먼저 들어오는 경우 ex.())(()
                    print("NO")
                    break
            if r == l:
                print("YES")
                break
    else:              #"("와 ")"의 수가 다를 때
        print("NO")

정답이지만 뭔가 코드를 더 간단하게 짜야될 것 같다. 왠지 좀 겹치는 느낌 ..?

찝찌이이입하다

반응형

'IT > 알고리즘' 카테고리의 다른 글

[백준 Python] 12919번 A와 B 2  (0) 2025.02.06
[백준 Python] 2573번 빙산  (0) 2025.01.25
[백준 Python] 13565번 침투  (0) 2025.01.23
[백준 Python] 2644번 촌수계산  (0) 2025.01.21
[백준 Python] 1647번 도시 분할 계획  (0) 2025.01.18