[Python] 백준 / silver / 9012 : 괄호

김상우·2021년 11월 10일
0

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

문자열 문제다. 저번에 다짐했던 대로, 문제를 풀기 전에 기본 자료구조를 한번 상기시켜보면 어렵지 않게 풀 수 있는 문제였다.

3가지 기본 자료구조 : Stack, Queue, Heap
4가지 파이썬 자료형 : List, Tuple, Dictionary, Set

괄호 특성상 2쌍이 하나를 이루어 짝이 되기 때문에 스택에 담아가며 pop 해주면 수월하게 풀릴 수 있었다.


파이썬 정답 코드

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

for _ in range(T):
    given = sys.stdin.readline().strip()
    stack = [given[0]]

    for x in given[1:]:
        if stack and stack[-1] == '(' and x == ')':
            stack.pop()
        else: stack.append(x)

    if stack: print("NO")
    else: print("YES")

profile
안녕하세요, iOS 와 알고리즘에 대한 글을 씁니다.

0개의 댓글