BOJ(백준) 9012번 괄호 파이썬
2021. 3. 19. 13:19ㆍ개인 공부 공간/Algorithm
9012번: 괄호
괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고
www.acmicpc.net
코드
import sys
r = sys.stdin.readline
T = int(r())
for _ in range(T):
l = list(r().rstrip())
s = 0
for i in l:
if i == '(':
s += 1
elif i == ')':
s -= 1
if s < 0:
break
if s == 0:
print('YES')
else:
print('NO')
해설
이번 문제에서 사용한 flag
(꼭 변수명이 flag일필요는 없다)는 어떠한 것을 기억해야 한다는 것을 신호로 남기기 ( flag를 설정한 후 마지막 출력 과정에서 그 flag의 값인지 아닌지 확인하기)위해 사용하였다. 위의 문제에서는 리스트 s
가 비어있을시 )
값이 들어오면 이미 그 인풋 값은 괄호 문자열의 조건을 충족시킬 수 없기 때문에 break
을 해줘야 하고 조건을 충족시킬 수 없다는 점을 표시하기 위해 flag = 1
을 해주었다.
결과
'개인 공부 공간 > Algorithm' 카테고리의 다른 글
BOJ(백준) 1966번 프린터큐 파이썬 (0) | 2021.03.19 |
---|---|
BOJ(백준) 1874번 스택 수열 파이썬 (0) | 2021.03.19 |
BOJ(백준) 10828번 스택 파이썬 (0) | 2021.03.19 |
BOJ(백준) 12865번 평범한 배낭 파이썬 (0) | 2021.03.19 |
BOJ(백준) 1912번 연속합 파이썬 (0) | 2021.03.19 |