Notice
Recent Posts
Recent Comments
Link
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Tags more
Archives
Today
Total
관리 메뉴

luke

[백준] - 다이얼 (5622) (자바/Java) 본문

알고리즘문제/백준 문제(Java)

[백준] - 다이얼 (5622) (자바/Java)

luke-king 2024. 10. 13. 21:13

 

 

 

 

 

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

 

 

 

 

 

 

 

 

 

 

 

 

문제.


 

 

 

 

 

 

 

풀이.


 

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);
		String str = sc.nextLine();
		int k = str.length();
		int tot = 0;
		
		for(int i = 0; i < k; i++) {
			switch(str.charAt(i)) {
			case 'A' : case 'B' : case 'C' :
				tot += 3;
				break;
			case 'D' : case 'E' : case 'F' :
				tot += 4;
				break;
			case 'G' : case 'H' : case 'I' :
				tot += 5;
				break;
			case 'J' : case 'K' : case 'L' : 
				tot += 6;
				break;
			case 'M' : case 'N' : case 'O' :
				tot += 7;
				break;
			case 'P' : case 'Q' : case 'R' : case 'S' :
				tot += 8;
				break;	
			case 'T' : case 'U' : case 'V' :
				tot += 9;
				break;	
			case 'W' : case 'X' : case 'Y' : case 'Z' :
				tot += 10;
				break;	
			}
		}
		
		System.out.println(tot);
	}
}

 

이번 문제는 백준 "다이얼" 문제다.

어려운 문제는 아니었다. 지문을 보면 각 숫자에 알파벳이 있는데 2번에 있는 알파벳을 돌릴 때 3초의 시간이 걸리며 그 후 9번까지 있는 알파벳 숫자가 1씩 올라가 3번은 4초 4번은 5초 5번은 6초... 순으로 올라가 입력받은 문자열을 하나씩 비교해 총합을 구하면 되는 문제다. 그럼 바로 풀이해보겠다.

 

1. 입력값을 받은 후 입력값의 길이를 구해 for문을 돌려준다.

 

2. for문 내에 switch문을 사용해 각 알파벳 조건에 충족할 경우 그 알파벳에 맞는 초를 더해 주면 끝이다.