본문 바로가기

프로그래밍/BOJ_Python 목표는 Diamond

[ Python | 백준 5622] 다이얼

문제 해석

한번 금속 핀을 돌릴 때 숫자 하나 입력 가능

숫자 입력 후 다이얼은 처음 위치로 돌아감

한 칸씩 추가로 움직일 때마다 1초가 걸림

 

default 1 = 2초

ABC +1

DEF +2

GHI +3

JKL +4

MNO +5

PQRS +6

TUV +7

WXYZ +8

 

초가 걸린다.

 

내가 생각한 알고리즘

알파벳 대문자 단어 입력

CASE문 이용?

아스키코드를 이용하면 더 짧아질 것 같긴 하다.

 

실제 풀이

배열 이용

 

dial = ['ABC', 'DEF', 'GHI', 'JKL', 'MNO','PQRS','TUV','WXYZ']
a = input()
ret = 0
for i in range(len(a)):
    for j in dial:
        if a[i] in j:
            ret += dial.index(j)+3
print(ret)