Java/백준알고리즘

[Java] 백준알고리즘 #5622 다이얼

Sehyeok20 2023. 10. 3. 19:25
반응형

백준알고리즘 #5622 다이얼

 

다이얼을 돌리는 시간을 구하는 문제.

먼저 아스키 코드표를 보자.

아스키코드표 (https://stepbystep1.tistory.com/10)

문제에서 대문자로 이루어진 단어가 주어진다고 했으니, 아스키코드표를 활용하면 쉽게 범위를 특정할 수 있다.

입력받은 문자를 한글자씩 잘라 아스키코드 변환 (int형변환)해준 후 각 범위에 따라 시간을 1초씩 추가해주면 된다.

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String a = sc.next();
        int time = 0;
        for (int i = 0; i < a.length(); i++) {
            int tmp = a.charAt(i) - 65;
            time += 3;
            if (tmp >= 3)
                time++;

            if (tmp >= 6)
                time++;

            if (tmp >= 9)
                time++;

            if (tmp >= 12)
                time++;

            if (tmp >= 15)
                time++;

            if (tmp >= 19)
                time++;

            if (tmp >= 22)
                time++;

        }
        System.out.println(time);

        sc.close();
    }
}

편의상 i번째문자 - 65를 하여 A면 0 B면 1 ... 이 되도록 만들어 준 뒤 숫자가 커질수록 1초씩 증가하도록 했다.

 

반응형