백준(BOJ) 문제 풀이

백준 9012번 문제(괄호) 파이썬(Python) 풀이 [로밍맨]

로밍맨 2021. 7. 18. 19:06
728x90
반응형

문제 링크

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

 

9012번: 괄호

괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고

www.acmicpc.net

 

정답 코드는 아래와 같습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
def solve():
  data = input()
  stack = []
  for item in data:
    if item == '(':
      stack.append(item)
    else:
      if len(stack) == 0:
        print("NO")
        return
      else:
        stack.pop()
  if len(stack) == 0:
    print("YES")
  else:
    print("NO")
 
= int(input())
for _ in range(t):
  solve()
 
cs

 

스택 자료구조를 처음 배우고 나서 간단하게 실습할 때 자주 등장하는 문제입니다.

실제로도 많이 쓰이는 알고리즘인데요.

 

728x90

 

보통 IDE 에서 괄호 쌍이 맞지 않는 경우에 빨갛게 표현해주는데, IDE 에서 이런 알고리즘을 통하여 쌍이 맞지 않는 부분을 찾는 것입니다.

 

풀이는 아래 영상을 참고 바랍니다.

https://www.youtube.com/watch?v=anOkS9pl_cw 

 

저작권 라이선스: CC BY (출처만 표시하면 자유롭게 이용 가능)

728x90
반응형