본문 바로가기

Programming [Python]/백준 알고리즘 솔루션

#92 백준 파이썬 [4949] 균형잡힌 세상

https://www.acmicpc.net/problem/4949

 

#Solution

백준 [9012] 괄호 문제를 참고하면 쉽게 풀 수 있다. 조건 하나만 더 붙여준 격.

while True:
    bracket = input()
    if bracket == ".":
        break
    bracket_stack = []
    answer = True
    
    for j in bracket:
        if j == "(" or j == "[":
            bracket_stack.append(j)
        
        elif j == ")":
            if len(bracket_stack) == 0:
                answer = False
                break
            if bracket_stack[-1] == "(":
                bracket_stack.pop()
            else:
                answer = False
                break
                
        elif j == "]":
            if len(bracket_stack) == 0:
                answer = False
                break
            if bracket_stack[-1] == "[":
                bracket_stack.pop()
            else:
                answer = False
                break

    if answer and not bracket_stack:
        print("yes")
    else:
        print("no")