백준 4949 균형잡힌 세상

김민영·2022년 12월 28일
0

알고리즘

목록 보기
11/125

균형잡힌 세상

정리

  • 스택
  • (, [는 각각 ], ) 대칭이 맞아야 함.
  • 마지막은 .이어야 함
def main(lst):
    if lst[-1] != ".":
        return "no"
    stack = []
    for word in lst:
        if word == "(" or word == "[":
            stack.append(word)
        elif word == ")":
            if len(stack) == 0 or stack[-1] != "(":
                return "no"
            stack.pop()
        elif word == "]":
            if len(stack) == 0 or stack[-1] != "[":
                return "no"
            stack.pop()
    if len(stack) == 0:
        return "yes"
    return "no"




while True:
    lst = list(input())
    if lst == ["."]:
        break
    print(main(lst))
profile
노션에 1차 정리합니당 - https://cream-efraasia-f3c.notion.site/4fb02c0dc82e48358e67c61b7ce8ab36?v=

0개의 댓글