본문 바로가기

백준

[백준]9012번:괄호(파이썬)

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

 

9012번: 괄호

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

www.acmicpc.net

num = int(input())
result=[]

for _ in range(num):
  stack=[]
  a=1
  btn=1
  word = list(input())
  
  for i in word:
    if i == '(':
      stack.append(i)
      #print("(추가")
    elif i == ')':
      if stack == [] or a==1:
        btn=0
        break
      elif stack[-1] == '(':
        #print("(제거")
        stack.pop()
      else:
        btn=0
        break
    #print(stack)
    #print(btn)
    #print(a)
    a+=1
  
  if btn == 0 or stack!=[] :
    result.append("NO")
  else:
    result.append("YES")

for i in result:
  print(i)

바로 성공~

어제 풀었던 stack문제의 하위호환 문제였다.

근데 btn=0을 btn==0이라고 써놓고 자꾸 오류가 나서 오류 찾느라 30분이나 썼다..

이런 실수좀 하지 말자.. 좀!!