Fantastic Chu's World

3129 : 올바른 괄호 2 (stack) 본문

Python/스택_큐

3129 : 올바른 괄호 2 (stack)

Mr_Chu 2020. 9. 4. 02:11

괄호 문자열이 주어지면 올바른 괄호 문자열인지 판단하는 프로그램을 작성하시오.

올바른 괄호 문자열이란 여는 괄호와 닫는 괄호의 짝이 맞고, 포함 관계에 문제가 없는 문자열을 말한다.

예를 들어, )()( 인 경우 여는 괄호와 닫는 괄호의 짝이 맞지 않으므로 올바른 괄호 문자열이 아니다.

(()())인 경우 괄호의 짝이 맞고 포함 관계가 맞으므로 올바른 괄호 문자열이다.

 

출력

올바른 괄호 문자열이면 'good', 아니면 'bad'를 출력한다.

 

n = list(input())
stack = []

for i in n:
    if i =='(':
        stack.append(i)
    elif i == ')':
        if len(stack) == 0: # 스택에 아무것도 없으면 올바른 괄호 X
            print("bad")
        stack.pop()
if len(stack) != 0:
    print("bad")

else: print("good")

'Python > 스택_큐' 카테고리의 다른 글

[백준][Python] 2493번 : 탑  (0) 2020.09.04
Comments