프로그래머스 Level2 올바른 괄호

Kim Yongbin·2023년 8월 29일
0

코딩테스트

목록 보기
15/162

Problem

Solution

def solution(s):
    stack = []
    
    for i in s:
        if i == "(":
            stack.append(i)
        else:
            if not stack or stack.pop() != "(":
                return False
    
    return len(stack) == 0

괄호는 ‘(’와 ‘)’가 하나씩 매칭되어야 하며 ‘(’가 무조건 먼저와야 한다.
따라서, ‘(’이 오면 스택에 넣고, ‘)’이 오면 스택에서 pop하여 매칭되는지를 확인하였다.
모든 문자열 순환이 마친 후 스택이 비어있어야 최종적으로 모든 괄호 매칭됐음을 의미한다.

Reference

프로그래머스 코딩 테스트 연습
https://school.programmers.co.kr/learn/courses/30/lessons/12909

profile
반박 시 여러분의 말이 맞습니다.

0개의 댓글