반응형
1. 문제
2. 코드
l = []
while 1:
a = input()
if a == '.':
break
fault_flag = 0
l = []
for i in range(len(a)):
if a[i] == '(' or a[i] == '[':
l.append(a[i])
elif a[i] == ')':
if len(l) == 0:
fault_flag = 1
break
temp = l.pop()
if temp != '(':
fault_flag = 1
break
elif a[i] == ']':
if len(l) == 0:
fault_flag = 1
break
temp = l.pop()
if temp != '[':
fault_flag = 1
break
if fault_flag == 0 and len(l) == 0:
print('yes')
else:
print('no')
3. 풀이
1) '('나 '['면 list에 push
2) ')'이면
--> list가 비어있으면 종료 (틀렸음)
--> list가 비어있지 않고 pop했는데 '(' 아니면 종료 (틀렸음)
3) ']'이면
--> list가 비어있으면 종료 (틀렸음)
--> list가 비어있지 않고 pop했는데 '[' 아니면 종료 (틀렸음)
728x90
반응형
'백준' 카테고리의 다른 글
[백준] 17210번 - 문문문 (0) | 2022.01.03 |
---|---|
[백준] 1874 - 스택 수열 (0) | 2021.12.28 |
[백준] 10828 - 스택 (0) | 2021.12.27 |
[백준] 1158번 - 요세푸스 문제 (0) | 2021.11.15 |
[백준] 2609번 - 최대공약수와 최소공배수 (feat. 파이썬으로 최대공약수, 최소공배수 구하기) (0) | 2021.11.12 |