💡문제접근
- 경우를 여러 가지로 잘 나눈다면 해결할 수 있는 문제였다.
- 테스트케이스의 예제가 정상적으로 출력되어 별 문제가 없다고 생각했는데 4%에서 칼같이 WA가 출력되어 당황스러웠는데 질문게시판에 있는 반례를 찾아서 코드를 수정하니 정상적으로 출력되었다.
💡코드(메모리 : 30616KB, 시간 : 340ms)
while True:
stack = []
string = input()
if string == ".":
break
else:
for i in string:
if i == "(":
stack.append("(")
elif i == "[":
stack.append("[")
else:
if i == ")":
if stack == []:
stack.append(")")
else:
if stack[-1] == "(":
stack.pop()
else:
stack.append(")")
elif i == "]":
if stack == []:
stack.append("]")
else:
if stack[-1] == "[":
stack.pop()
else:
stack.append("]")
if stack == []:
print("yes")
else:
print("no")
💡소요시간 : 20m