문제 : https://www.acmicpc.net/problem/5622
5622번: 다이얼
첫째 줄에 알파벳 대문자로 이루어진 단어가 주어진다. 단어의 길이는 2보다 크거나 같고, 15보다 작거나 같다.
www.acmicpc.net
Sol ) : 구현 문제, 요구조건에 맞춰서 출력
- 딕셔너리 자료구조를 활용하여 각 알파벳과 소요 시간을 매핑
- A~O 까지는 문자 세 개씩 묶여있으니 (i=0 ; i <15), PQRS ( i=15 ; i <19 ), TUV ( i = 20 ; i <22 ), WXYZ ( i=22 ; i <26 )으로 나눠서 저장하기
- 입력받은 문자열을 순회하면서 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)
'Problem Solving > boj.kr (Python)' 카테고리의 다른 글
[BOJ / 파이썬] 1316 : 그룹 단어 체커 (0) | 2022.02.26 |
---|---|
[BOJ / 파이썬] 2941 : 크로아티아 알파벳 (0) | 2022.02.26 |
[BOJ / 파이썬] 1152 : 단어의 개수 (0) | 2022.02.26 |
[BOJ / 파이썬] 2908 : 상수 (0) | 2022.02.26 |
[BOJ / 파이썬] 1157 : 단어 공부 (0) | 2022.02.26 |
댓글