title: "[프로그래머스] 조이스틱 Python 파이썬 해설 (Level 2) - 이도훈"
cleanUrl: "programmers/42860"
description: "프로그래머스 Level 2 문제 [조이스틱]의 풀이를 정리합니다."

문제 설명 및 제한사항

아이디어 및 해결 방법

코드

def move_count(c):
    return min( ord(c) - ord('A'), 26 - (ord(c) - ord('A')) )

def solution(name):
    answer = 0
    m = len(name) - 1
    for i, c in enumerate(name):
        answer += move_count(c)
        
        cursor = i + 1
        while cursor < len(name) and name[cursor] == 'A':
            cursor += 1
            
        left, right = i, len(name) - cursor
        m = min([m, 2*left + right, 2*right + left])
        
    return answer + m

출처

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