본문 바로가기
Problem Solving/boj.kr (Python)

[BOJ / 파이썬] 5622 : 다이얼

by hoiiiii 2022. 2. 26.

문제 : https://www.acmicpc.net/problem/5622

 

5622번: 다이얼

첫째 줄에 알파벳 대문자로 이루어진 단어가 주어진다. 단어의 길이는 2보다 크거나 같고, 15보다 작거나 같다.

www.acmicpc.net

Sol ) : 구현 문제, 요구조건에 맞춰서 출력

  1. 딕셔너리 자료구조를 활용하여 각 알파벳과 소요 시간을 매핑
    • A~O 까지는 문자 세 개씩 묶여있으니 (i=0 ; i <15), PQRS ( i=15 ; i <19 ), TUV ( i = 20 ; i <22 ), WXYZ ( i=22 ; i <26 )으로 나눠서 저장하기
  2. 입력받은 문자열을 순회하면서 1에서 지정한 키로 넣어서 값을 누적

소스코드 )

dial = {};
for i in range(15):
    dial[ord("A")+i] = 3+(i//3)
for i in range(15,19):
    dial[ord("A")+i] = 8
for i in range(19,22):
    dial[ord("A")+i] = 9
for i in range(22,26):
    dial[ord("A")+i] = 10
s = input()
result = 0
for char in s:
    result += dial[ord(char)]
print(result)

댓글