일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- Android
- androidstudio
- bitmap
- BOJ
- Canvas
- CS
- Database
- DBeaver
- DP
- Ecilpse
- Eclipse
- firebase
- git
- github
- GooglePlayServices
- gradle
- IDE
- IntelliJ
- java
- json
- kotlin
- level2
- linux
- mariadb
- MYSQL
- Paint
- permission
- python
- Sorting
- sourcetree
Archives
will come true
[백준] 2908 번 - 상수 (Java) 본문
728x90
문제
https://www.acmicpc.net/problem/2908
2908번: 상수
상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두
www.acmicpc.net
코드
1. StringBuffer 타입으로 처리하는 방법
StringTokenizer로 두 정수를 토큰으로 분리한 뒤, 각 문자열을 거꾸로 뒤집은 결과를 int 타입으로 파싱한다.
import java.util.Scanner;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
StringTokenizer st = new StringTokenizer(s, " ");
int a = Integer.parseInt(new StringBuffer(st.nextToken()).reverse().toString());
int b = Integer.parseInt(new StringBuffer(st.nextToken()).reverse().toString());
System.out.print(Math.max(a, b));
}
}

2. int 타입으로 처리하는 방법
정수 두 개를 차례로 입력받는다. 각 정수의 자릿수를 뒤에서 부터 하나씩 잘라서 1의 자릿수를 100의 자릿수로, 100의 자릿수를 1의 자릿수로 가지는 새로운 int 값을 만든다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] num = new int[2];
num[0] = sc.nextInt();
num[1] = sc.nextInt();
int[] result = new int[2];
for(int i = 0; i < 2; i++){
for(int j = 100; j > 0; j /= 10){
result[i] += (num[i] % 10) * j;
num[i] /= 10;
}
}
System.out.print(Math.max(result[0], result[1]));
}
}

= 두 방법 모두 결과는 정답이나, 본 문제가 [문자열 처리] 문제로 분류되어 있는 만큼, StringTokenizer, StringBuffer를 사용하는 첫번째 방법을 이용하기를 권장.
728x90
'Algorithm' 카테고리의 다른 글
[백준] 2941번 - 크로아티아 알파벳 (Java) (0) | 2022.02.07 |
---|---|
[백준] 5622번 - 다이얼 (Java) (0) | 2022.02.07 |
[백준] 1065번 - 한수 (Java) (0) | 2022.02.04 |
[프로그래머스/Level2] 문자열 압축 (Java) (0) | 2022.01.19 |
[프로그래머스/Level2] 올바른 괄호 (Java) (0) | 2022.01.19 |