문제
입출력 형식 및 출처
import sys
input_data = sys.stdin.readline
while True:
temp_stack = []
input_line = input_data().rstrip()
# 이부분 주의. 마지막(7번)케이스때문에 strip()이 아닌 rstrip()써야함.
if input_line == ".":
break
for char in input_line:
if char=="(" or char=="[":
temp_stack.append(char)
elif char==")":
if len(temp_stack)!=0 and temp_stack[-1] == "(":
temp_stack.pop()
else:
temp_stack.append(char)
break
elif char=="]":
if len(temp_stack)!=0 and temp_stack[-1] == "[":
temp_stack.pop()
else:
temp_stack.append(char)
break
if len(temp_stack)==0:
print("yes")
else:
print("no")
스택의 구조를 익히고 연습하기 좋은 문제
temp_stack에서 pop을 해주기 전, peak부분이 어떤종류인지 파악하는 부분을 구현하는게 중요
파이썬 입력 부분이 많이 약하다...😇