https://www.acmicpc.net/problem/5622
다이얼에 적혀있는 알파벳과 숫자를 연동해서 푸는 문제.
알파벳에 따라 다이얼의 숫자로 바꾼 후에, 시간을 계산한다. 하나의 다이얼을 입력하는데 걸리는 시간은 다이얼에 적혀있는 숫자+1초만큼 걸리므로, 더해줄 때 1을 같이 더해준다.
#include <stdio.h>
#include <string.h>
int change (const char a) {
if (a == 'A'|| a == 'B'|| a == 'C') return 2;
if (a == 'D'|| a == 'E'|| a == 'F') return 3;
if (a == 'G'|| a == 'H'|| a == 'I') return 4;
if (a == 'J'|| a == 'K'|| a == 'L') return 5;
if (a == 'M'|| a == 'N'|| a == 'O') return 6;
if (a == 'P'|| a == 'Q'|| a == 'R'|| a == 'S') return 7;
if (a == 'T'|| a == 'U'|| a == 'V') return 8;
if (a == 'W'|| a == 'X'|| a == 'Y'|| a == 'Z') return 9;
}
int main () {
char a[15];
int time = 0;
scanf("%s", a);
for (int i = 0; i < strlen(a); i++) {
time += change(a[i]) + 1;
}
printf("%d", time);
return 0;
}
여담으로 string.h의 strlen함수를 쓰면 쓸수록 이게 더 좋다는게 느껴진다.
'coding_test > BAEKJOON' 카테고리의 다른 글
백준 1316번 C언어 풀이 (0) | 2021.08.14 |
---|---|
백준 2941번 C언어 풀이 (0) | 2021.08.13 |
백준 2908번 C언어 풀이 (0) | 2021.08.12 |
백준 1152번 C언어 풀이 (0) | 2021.08.11 |
백준 1157번 C언어 풀이 (0) | 2021.08.10 |