Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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
- Controller
- Repository
- reverse()
- Generic
- 가독성
- prettier
- 백준 문자열
- RestController
- SPLIT
- Java
- vscode
- Service
- Component
- 일관성
- JDoodle
- redis
- spring
- JAVA 설치
- putty
- StringBuilder
- 백준
- 다이얼
- 런타임에러
- 생성형AI
- 생활코딩
- StringTokenizer
- 문자열
- outfitanyone
- mobaXterm
- 문자열 반복문
Archives
- Today
- Total
gone
#[백준] 5622 다이얼 본문

제출 1) 에러
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] str = br.readLine().split("");
int time = 0;
int num = 0;
for(int i=0; i<str.length; i++) {
num = (str[i].charAt(0) - 'A') / 3 + 2; // 영어가 해당하는 수
time += num + 1;
}
System.out.println(time);
}
}
당연히 이게 정답인줄 알았지남 코드를 다시 살펴보니 7 => PQRS, 9 => WXYZ 일때가 4개씩 들어가는 예외가 발생한다.
따라서 나누기 3은 옳바르지 못한 코드로직이다 따라서 아래와 같이 Switch 문 으로 예외처리를 하면서 처리하는게 가장 정확한 방법인것같다. 앞으로 예외처리를 좀더 꼼꼼히 살펴봐야되겠다.
제출2) Switch-case 문
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s = br.readLine();
int count=0;
int k = s.length();
for(int i = 0 ; i < k ; i++) {
switch(s.charAt(i)) {
case 'A' : case 'B': case 'C' :
count += 3;
break;
case 'D' : case 'E': case 'F' :
count += 4;
break;
case 'G' : case 'H': case 'I' :
count += 5;
break;
case 'J' : case 'K': case 'L' :
count += 6;
break;
case 'M' : case 'N': case 'O' :
count += 7;
break;
case 'P' : case 'Q': case 'R' : case 'S' :
count += 8;
break;
case 'T' : case 'U': case 'V' :
count += 9;
break;
case 'W' : case 'X': case 'Y' : case 'Z' :
count += 10;
break;
}
}
System.out.print(count);
}
}'알고리즘' 카테고리의 다른 글
| #[백준] 2908 상수 (StringBuilder.reverse()) (0) | 2024.01.15 |
|---|---|
| #[백준] 1157 단어공부 (0) | 2024.01.12 |
| #[백준] 1152 단어의 개수(StringTokenizer 클래스) (0) | 2024.01.12 |