https://school.programmers.co.kr/learn/courses/30/lessons/42860
def solution(name):
answer = 0
for char in name:
answer+=min(ord(char)-ord('A'),ord('Z')-ord(char)+1)
n=len(name)
cursor=n-1
for i in range(n):
next_idx=i+1
while next_idx<n and name[next_idx]=='A':
next_idx+=1
cursor=min(cursor,2*i+n-next_idx,i+2*n-2*next_idx)
answer+=cursor
return answer
i: 현재 인덱스
n: 총 길이
next_idx: 현재 인덱스 다음 A가 아닌 알파벳
따라서, 2i+n-next_idx
따라서, i+2(n-next_idx)
각 자리에서 비교하면서 가장 커서를 작게 움직일 수 있는 곳을 찾아서 업데이트 하게 된다. 초기 값은 A가 하나도 없는 경우인 n-1