상세 컨텐츠

본문 제목

백준[5622번]:: 다이얼(Python,파이썬)

카테고리 없음

by Dong_Eun2 2020. 9. 21. 23:23

본문

www.acmicpc.net/problem/5622

 

5622번: 다이얼

첫째 줄에 알파벳 대문자로 이루어진 단어가 주어진다. 단어는 2글자~15글자로 이루어져 있다.

www.acmicpc.net

 

 

 

 

나의 코드:

 

num = input()
res = 0
for i in num:
    if i in ['A', 'B', 'C']:
        res += 3
    elif i in ['D', 'E', 'F']:
        res += 4
    elif i in ['G', 'H', 'I']:
        res += 5
    elif i in ['J', 'K', 'L']:
        res += 6
    elif i in ['M', 'N', 'O']:
        res += 7
    elif i in ['P', 'Q', 'R', 'S']:
        res += 8
    elif i in ['T', 'U', 'V']:
        res += 9
    elif i in ['W', 'X', 'Y', 'Z']:
        res += 10
print(res)

 

처음에는 문제가 이해가 되지않아서 고민을 조금 했는데, 결국 숫자 1을 구하려면 총 2초가 걸린다고 하였고 1칸 옆에 있는 숫자를 걸기 위해서는 1초씩 더한다고 하였다. 이를 이용하여 2는 [A,B,C] 이므로 여기에는 3초를 추가하고, 계속 반복하여 1초씩 추가하여 결과를 구하면 된다.

 

 

 

 

 

 

재대로 된 코드:

 

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

 

댓글 영역