Coding Test/Algorithm #Python3

[백준] 괄호 #자료구조 #알고리즘

harrym8n 2025. 3. 31. 17:09

문제 바로가기 👉 백준 9012번


☑️  문제 요약

입력으로 주어진 괄호 문자열이 VPS 인지 아닌지를 판단해서 그 결과를 YES 와 NO 로 나타내는 프로그램 작성

- 입력 데이터는 표준 입력을 사용한다.
- 입력은 T개의 테스트 데이터로 주어진다.
- 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다.
- 각 테스트 데이터의 첫째 줄에는 괄호 문자열이 한 줄에 주어진다.
- 하나의 괄호 문자열의 길이는 2 이상 50 이하

 

☑️  KEY 포인트

  1. 문제 풀이 과정을 먼저 생각한다.
    • 먼저 몇 개의 텍스트가 입력될 건지 입력받는다.
    • 입력받은 텍스트 수 만큼 텍스트를 입력 받는다.
    • 가능할 때까지 완성된 괄호를 제거한다.
  2. 위 과정을 코드로 구현한다.
    • input()을 사용해서 텍스트 수와 텍스트를 입력받는다.
    • 텍스트 단위 for문, 반복해서 괄호를 제거하는 while문으로 구조를 만든다.
    • while문 이후 최초입력한 텍스트에서 글자가 남아있는지 여부를 확인한다.
    • 글자가 남아있으면 NO, 남아있지 않으면 YES를 출력한다.

☑️  해결 코드

 

num = int(input())
for _ in range(num):
    text = input()
    while '()' in text:
        text = text.replace('()', '')
    if len(text)==0 : print('YES')
    else : print('NO')