[프로그래머스] - 올바른 괄호(Python)

병찬·2022년 4월 1일
0

프로그래머스

목록 보기
43/52
post-thumbnail

문제📝


풀이💡

  • 올바른 괄호인지 판단할 리스트 arr를 만들어준다.
  • 현재 괄호가 '('이면 arr에 넣어주고 arr이 빈 스택이면 올바르지 않으므로 반복문을 탈출한다.
  • arr이 빈 스택이 아니라면 맨 끝에 있는 '('를 빼준다.
  • 반복문을 수행 후 arr이 빈 스택이 아니면 false를 반환한다.

코드💻

# 프로그래머스 Lv2 - 올바른 괄호
# 문제링크: https://programmers.co.kr/learn/courses/30/lessons/12909

def solution(s):
    answer = True
    arr = []   
  
    for i in s:
        if i == '(':  
            arr.append(i) 
        else: 
            if arr == []: 
                answer = False
                break
            else:
                arr.pop() 

    if arr != []: 
        answer = False

    return answer

결과😎


느낀점👨‍💻

처음에는 양끝에 괄호와 왼쪽 괄호와 오른쪽 괄호의 개수에만 집중하였는데 그 방식의 문제를 발견하였고 스택방식을 이용해서 문제를 해결하였다. 꽤 오랜시간이 걸린 것 같은데 알고리즘의 실력을 다지기에 좋은 문제인 것 같다.


Sinbmil의 알고리즘 문제 코드

-> https://github.com/Sinbmil/Algorithm-Study

profile
코딩을 열심히 하고 있습니다:)

0개의 댓글

관련 채용 정보