주어진 배열에 대해서 순서대로 찾아가야 하니 그리디 알고리즘을 이용해야 한다.
k = input()
arr = []
start = 1
ans = 0
for i in range( len(k)):
arr.append(ord(k[i])-64)
diff= abs(arr[0]-start)
ans += min(diff,abs(26-diff) )
start = arr[0]
for i in range(1, len(arr)):
diff = abs(arr[i]-arr[i-1])
ans += min(diff, abs(26-diff))
# print(arr)
print(ans)
'알고리즘 문제풀이' 카테고리의 다른 글
Pen Pineapple Apple Pen (백준15881) (0) | 2023.09.14 |
---|---|
Send me the money(백준 15786) (0) | 2023.09.14 |
피로도(백준 22864) (0) | 2023.09.12 |
첨탑 밀어서 부수기(백준 28014) (0) | 2023.09.12 |
가장 많은 글자(백준 1371) (1) | 2023.09.09 |