https://www.acmicpc.net/problem/9012
9012번: 괄호
괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고
www.acmicpc.net
스택을 이용한 괄호문제.
스택의 종류가 하나라서 개수만 확인하면 돼서 꽤 쉽다.
( 일 경우, 스택에 추가하고, )의 경우에 스택에서 pop하는 형식으로 짜고,
0개일때 pop하는경우랑, 마지막 문자까지 읽었는데 스택에 남아있는 경우에는 NO를,
마지막까지 읽었고 스택이 0인 경우엔 YES를 출력한다.
해답코드
T = int(input())
for _ in range(T):
s = input()
flag = 0 # 비정상종료시 1
st = []
for i in s:
if i == "(":
st.append("(")
if i == ")":
if len(st) == 0:
print("NO")
flag = 1
break
st.pop()
if flag == 0:
if len(st) != 0:
print("NO")
continue
print("YES")
'항해99 > [항해99] 알고리즘' 카테고리의 다른 글
[BOJ] 1436 영화감독 숌 파이썬 (0) | 2024.01.29 |
---|---|
[BOJ]1002 터렛 파이썬 (0) | 2024.01.15 |
[알고리즘] 백준 19637 IF문 좀 대신 써줘 (0) | 2024.01.04 |
[BOJ] 10816 숫자카드 2 (0) | 2023.12.31 |
[항해99] DP - Dynamic Programming (0) | 2023.12.30 |