백준 9012 파이썬 (괄호)

철웅·2022년 10월 1일
0

BOJ

목록 보기
3/46

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

  1. ( , ) 개수가 서로 같아야 한다.
  2. ( 나온 후에는 반드시 ) 나와야 한다.
  3. 스택을 활용하여 마지막에 높이 0을 유지하자

💻 Code

import sys
n = int(sys.stdin.readline())



for i in range(n):

    stack = []
    parentheses = sys.stdin.readline()

    for j in parentheses:
        if (j=='('):
            stack.append(j)
        elif(j==')'):
            if(len(stack)==0):
                print("NO")
                break
            else:
                stack.pop()
    else:   #break문으로 끊기지 않고 수행되었을 경우 실행
        if(len(stack)==0):
            print("YES") # 스택이 비어있음
        else:
            print("NO") # 스택에 괄호가 남아있음
            
  • break 문으로 반복문이 안 끊겼을 때를 대비해 마무리용으로 for-else 구문을 사용하였다.

0개의 댓글