백준. 9012번. 괄호 파이썬 풀이

minan·2021년 7월 1일
0

백준

목록 보기
17/35

백준. 9012번. 괄호 파이썬 풀이

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

전에 만들어뒀던 괄호 판단 함수를 사용하였다

d = {
    ')': '(',
    ']': '[',
    '}': '{'
}
# 문자열이 올바른 괄호 문자열인지 판단하는 함수
def check(s):
    stack = []
    for c in s:
        if c == '{' or c == '[' or c == '(':
            stack.append(c)
        else:
            if stack and stack.pop() == d[c]:
                pass
            else:
                return False
    # 올바른 괄호 문자열이라면 True 리턴
    # 스택이 비어있어야 함
    if not stack:
        return True
    else:
        return False

n = int(input())

for _ in range(n):
    temp = str(input())
    if check(temp):
        print("YES")
    else:
        print("NO")
profile
https://github.com/minhaaan

0개의 댓글

관련 채용 정보