알고리즘/백준(BOJ)

백준 5622 다이얼

오뚜깅 2021. 1. 29. 14:36
반응형

누르고자 하는 번호에 적힌 문자들의 ASCII 범위로 구분하고 시간을 누적하여 더한다.

상근이의 할머니는 알파벳으로만 숫자를 외운다고 하였으니, 알파벳이 없는 1과 0은 제외를 한다.

#include <iostream>

using namespace std;

int main(){
    ios::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);

    string s;

    cin >> s;
    int time = 0;
    for(int i = 0; i < s.size(); i++){
        // ABC
        if(s[i] >= 65 && s[i] <= 67)
            time += 3;
        // DEF
        if(s[i] >= 68 && s[i] <= 70)
            time += 4;
        // GHI
        if(s[i] >= 71 && s[i] <= 73)
            time += 5;
        // JKL
        if(s[i] >= 74 && s[i] <= 76)
            time += 6;
        // MNO
        if(s[i] >= 77 && s[i] <= 79)
            time += 7;
        // PQRS
        if(s[i] >= 80 && s[i] <= 83)
            time += 8;
        // TUV
        if(s[i] >= 84 && s[i] <= 86)
            time += 9;
        // WXYZ
        if(s[i] >= 87 && s[i] <= 90)
            time += 10;
    }

    cout << time;


    return 0;
}
반응형