앞날창창이승경 개발 블로그
[백준/python/파이썬] #9012 괄호 본문
9012번: 괄호
괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고
www.acmicpc.net
문제 설명
스택과 pop 함수를 이용합니다.
CODE
n = int(input())
for _ in range(n):
s = input()
stack = []
res = 'NO'
for i in s:
if i == '(':
stack.append(i)
elif i == ')':
if len(stack) > 0 and stack[-1] == '(':
stack.pop()
else:
stack.append(i)
if len(stack) == 0:
res = 'YES'
print(res)
코드 풀이
- 반복할 횟수를 입력받습니다.
- 반복을 하면서 괄호 문자열을 입력받습니다.
- 스택(list) 한개를 생성합니다.
- 변수(답)를 미리 생성하고 'NO'라고 지정해놓습니다.
- 입력받은 괄호 문자열을 돌면서 '('면 스택에 추가하고
')'면 스택의 마지막 원소가 '('고 스택의 원소 개수가 보다 크면 스택을 pop시켜 '('를 없앱니다.
- 반복을 다 돌고 만약 스택의 크기가 0 이라면 답을 'Yes'로 바꿉니다.
-답을 출력합니다.
감사합니다.
'백준(BOJ)' 카테고리의 다른 글
[백준/python/파이썬] #22993 서든어택 3 (0) | 2021.11.09 |
---|---|
[백준/python/파이썬] #2839 설탕 배달 (0) | 2021.08.17 |
[백준/python/파이썬] #4673 셀프 넘버 (0) | 2021.08.02 |
[백준/python/파이썬] #7568 덩치 (1) | 2021.02.27 |
Comments