본문 바로가기
Programming/Programmers

[프로그래머스] 괄호 회전하기 (Python)

by 데이터현 2021. 11. 1.

https://programmers.co.kr/learn/courses/30/lessons/76502

 

코딩테스트 연습 - 괄호 회전하기

 

programmers.co.kr

 

올바른 괄호인지 체크하는 코드와, 왼쪽으로 회전하는 것을 어떻게 짜는지만 고민하면 되는 간단한 구현 문제다.

올바른 괄호 여부에서 dict를 활용하니 훨씬 깔끔하게 풀 수 있었다.

 

나의 풀이

def check_correct(s):
    bracket_dict = {']':'[',')':'(','}':'{'}
    stack = []
    for v in s:
        if len(stack) ==0:
            stack.append(v)
        elif v in bracket_dict:
            if bracket_dict[v] == stack[-1]:
                stack.pop()
            else:
                return False
        else:
            stack.append(v)
    if stack:
        return False
    else:
        return True

def solution(s):
    answer = 0
    for i in range(len(s)):
        bracket = s[i:]+s[:i]
        if check_correct(bracket):
            answer+=1
    return answer

댓글