9012번: 괄호
괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고
www.acmicpc.net
구현 언어: 파이썬
import sys
input = sys.stdin.readline
n = int(input())
for i in range(n):
VPS_input = list(input().strip())
checker = 0
for i in range(len(VPS_input)):
if VPS_input[i] == '(':
checker += 1
if VPS_input[i] == ')':
if checker >= 1:
checker -= 1
else:
print('NO')
break
if i == len(VPS_input) - 1:
if checker == 0:
print('YES')
else:
print('NO')
시도 횟수: 1
구현 포인트:
여는 괄호가 나올 때마다 체커를 하나 증가하고, 닫는 괄호가 나올 때마다 체커를 하나 감소시켜서 최종적으로 0이 되면 VPS가 맞다고 판단하는 알고리즘이다. 중간에 체커가 0인 상태에서 닫는 괄호가 나올 경우에는 열린 괄호가 없는데 닫는 괄호가 나왔다는 의미이므로 바로 VPS가 아니라고 판단한다.
기본적으로는 스택의 개념이지만 물리적인 스택 없이 구현하였다.
'Archive > BOJ' 카테고리의 다른 글
백준 11723번: 집합 (0) | 2021.02.14 |
---|---|
백준 10816번: 숫자 카드 2 (0) | 2021.02.14 |
백준 10866번: 덱 (0) | 2021.02.14 |
백준 10845번: 큐 (0) | 2021.02.14 |
백준 10828번: 스택 (0) | 2021.02.14 |
9012번: 괄호
괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고
www.acmicpc.net
구현 언어: 파이썬
import sys
input = sys.stdin.readline
n = int(input())
for i in range(n):
VPS_input = list(input().strip())
checker = 0
for i in range(len(VPS_input)):
if VPS_input[i] == '(':
checker += 1
if VPS_input[i] == ')':
if checker >= 1:
checker -= 1
else:
print('NO')
break
if i == len(VPS_input) - 1:
if checker == 0:
print('YES')
else:
print('NO')
시도 횟수: 1
구현 포인트:
여는 괄호가 나올 때마다 체커를 하나 증가하고, 닫는 괄호가 나올 때마다 체커를 하나 감소시켜서 최종적으로 0이 되면 VPS가 맞다고 판단하는 알고리즘이다. 중간에 체커가 0인 상태에서 닫는 괄호가 나올 경우에는 열린 괄호가 없는데 닫는 괄호가 나왔다는 의미이므로 바로 VPS가 아니라고 판단한다.
기본적으로는 스택의 개념이지만 물리적인 스택 없이 구현하였다.
'Archive > BOJ' 카테고리의 다른 글
백준 11723번: 집합 (0) | 2021.02.14 |
---|---|
백준 10816번: 숫자 카드 2 (0) | 2021.02.14 |
백준 10866번: 덱 (0) | 2021.02.14 |
백준 10845번: 큐 (0) | 2021.02.14 |
백준 10828번: 스택 (0) | 2021.02.14 |