[python] 백준 9012번

hyeo71·2023년 5월 17일
0

백준

목록 보기
1/24

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

문제 : 괄호

  • 시간 제한 : 1초
  • 메모리 제한 : 128MB
  • 입력 제한 : 2 ≤ 괄호 문자열의 길이 ≤ 50

풀이

  1. 구현
import sys

for _ in range(int(sys.stdin.readline())):
    vps = sys.stdin.readline().strip()

    if vps.count("(") != vps.count(")"):
        print("NO")
        continue

    while "()" in vps:
        vps = vps.replace("()", "")

    if len(vps) != 0:
        print("NO")
    else:
        print("YES")
  1. 스택
import sys


def stack(valid_ps):
    result = []

    if valid_ps.count("(") != valid_ps.count(")"):
        return "NO"

    for i in valid_ps:
        if i == ")":
            if len(result) == 0:
                return "NO"
            result.pop()
        elif i == "(":
            result.append(")")

    return "YES"


for _ in range(int(sys.stdin.readline())):
    vps = sys.stdin.readline().strip()

    print(stack(vps))

0개의 댓글