풀이 과정


1. 문자열을 순차적으로 접근

2. (를 만나면 스택에 넣음.

3. )를 만나면 스택에서 뺌, 이 때, 스택이 비어있다면 잘못된 괄호 문자열

4. 과정이 모두 끝났을때 스택이 비어있지 않다면 (가 더 많이 나온것이므로 잘못된 괄호 문자열


from collections import deque

def solution(s):
    queue = deque()
    for c in s:
        if c == '(':
            queue.append('(')
        else:
            if len(queue) == 0:
                return False
            queue.popleft()

    if queue:
        return False

    return True

출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges

'알고리즘[Python] > 프로그래머스' 카테고리의 다른 글

[ Lv 2 ] [3차] 파일명 정렬.py  (0) 2021.07.06
[ Lv 2 ] [3차] 압축  (0) 2021.07.05
[ Lv 2 ] 땅따먹기  (0) 2021.07.04
[ Lv 2 ] [3차] 방금그곡  (0) 2021.07.03
[ Lv 2 ] 피보나치 수  (0) 2021.07.01

+ Recent posts