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

[풀이]
알고리즘에 stack 카테고리가 있어서 stack을 이용해 풀었다.
'('일 경우 stack에 쌓아주고, ')'일 경우 pop을 해준다.
만약 ')'이고 stack이 비어있을 경우 미리 선언해둔 flag를 True로 설정하고 조건문을 빠져나온다.
그 후 stack이 비어있고, flag이 True일 경우에는 "YES"를 출력하고 아닐 경우 "NO"를 출력한다.
[코드]
if __name__ == '__main__':
for _ in range(int(input())):
s = list(input())
stack = []
flag = False
for i in range(len(s)):
if s[i] == '(':
stack.append(s[i])
else:
if not stack:
flag = True
break
else:
stack.pop()
if not stack and not flag:
print("YES")
else:
print("NO")
'문제풀이 > BOJ' 카테고리의 다른 글
[Python] BOJ/백준 2164번 카드2 (0) | 2021.07.24 |
---|---|
[Python] BOJ/백준 1259번 팰린드롬수 (0) | 2021.07.22 |
[Python] BOJ/백준 10989번 수 정렬하기 3 (0) | 2021.07.22 |
[Python] BOJ/백준 10814번 나이순 정렬 (0) | 2021.07.22 |
[Python] BOJ/백준 1920번 수 찾기 (0) | 2021.07.22 |
[문제]
https://www.acmicpc.net/problem/9012
9012번: 괄호
괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고
www.acmicpc.net

[풀이]
알고리즘에 stack 카테고리가 있어서 stack을 이용해 풀었다.
'('일 경우 stack에 쌓아주고, ')'일 경우 pop을 해준다.
만약 ')'이고 stack이 비어있을 경우 미리 선언해둔 flag를 True로 설정하고 조건문을 빠져나온다.
그 후 stack이 비어있고, flag이 True일 경우에는 "YES"를 출력하고 아닐 경우 "NO"를 출력한다.
[코드]
if __name__ == '__main__':
for _ in range(int(input())):
s = list(input())
stack = []
flag = False
for i in range(len(s)):
if s[i] == '(':
stack.append(s[i])
else:
if not stack:
flag = True
break
else:
stack.pop()
if not stack and not flag:
print("YES")
else:
print("NO")
'문제풀이 > BOJ' 카테고리의 다른 글
[Python] BOJ/백준 2164번 카드2 (0) | 2021.07.24 |
---|---|
[Python] BOJ/백준 1259번 팰린드롬수 (0) | 2021.07.22 |
[Python] BOJ/백준 10989번 수 정렬하기 3 (0) | 2021.07.22 |
[Python] BOJ/백준 10814번 나이순 정렬 (0) | 2021.07.22 |
[Python] BOJ/백준 1920번 수 찾기 (0) | 2021.07.22 |