«   2022/05   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
Archives
Today
11
Total
83,907
관리 메뉴

차근차근

[백준 9012] 괄호 본문

Algorithm (Python)/문자열

[백준 9012] 괄호

SWKo 2020. 10. 31. 02:38

0. 제목

  • 백준 9012 괄호
  • BOJ 9012 괄호
  • 파이썬 9012 괄호
  • Python 9012 괄호

1. 문제

www.acmicpc.net/problem/9012

 

9012번: 괄호

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

www.acmicpc.net


2. 풀이

  • 스택을 사용해서 '('이 나오면 push, ')'이 나오면 pop을 한다.
  • 반복문 중간에 pop을 할 수 없을 때 또는 마지막에 스택의 원소 개수가 0이 아닐때 NO를 출력하고 아니면 YES를 출력한다.

3. 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
= int(input())
for _ in range(T):
    stack = []
    ps = list(input())
    flag = True
    for i in ps:
        if i == '(':
            stack.append(i)
        else:
            if len(stack):
                stack.pop()
            else:
                flag = False
                break
    if flag and len(stack) == 0:
        print("YES")
    else:
        print("NO")

 

'Algorithm (Python) > 문자열' 카테고리의 다른 글

[백준 9012] 괄호  (0) 2020.10.31
[백준 1157] 단어 공부  (0) 2020.10.31
[백준 10809] 알파벳 찾기  (0) 2020.10.31
[백준 8958] OX퀴즈  (0) 2020.10.31
0 Comments
댓글쓰기 폼