문제
https://www.acmicpc.net/problem/2908
입력 출력
734 893 473
입력 출력
221 231 132
숫자 2개를 입력받는다. 숫자를 거꾸로 만든 다음, 거꾸로 한 숫자 중 큰 숫자를 출력하는 문제이다.
------------------------------------------------------------------------------------------------------------------
풀이
Scanner는 노가다로 일일히 직접 바꾸어서 풀었고, BufferedReader는 StringBuilder를 이용해서 풀었다.
문자열 관련 문제는 StringBuilder를 이용하면 많이 쉽게 풀리는 것 같다.
(1) Scanner 사용
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String num1 = sc.next();
String num2 = sc.next();
sc.close();
char[] re_num1 = new char[3];
char[] re_num2 = new char[3];
int n = 0;
for(int i=2;i>=0;i--) {
re_num1[i] = num1.charAt(n);
re_num2[i] = num2.charAt(n);
n++;
}
String str_num1 = new String(re_num1);
String str_num2 = new String(re_num2);
int a = Integer.parseInt(str_num1);
int b = Integer.parseInt(str_num2);
System.out.println(a>b?a:b);
}
}
------------------------------------------------------------------------------------------------------------------
(2) BufferdReader 사용
String으로 입력을 받은 뒤, split()을 이용하여 숫자들을 문자열로 저장하였다.
Integer.parseInt()를 이용하여 int형태로 바꾸어주는 과정에서 StringBuilder를 사용한다.
StringBuilder에 append를 하여 숫자를 문자열로 저장한 뒤, reverse()로 숫자를 뒤집어 주었다.
parseInt는 String을 Int로 바꾸어주기 때문에 toString을 이용하여 StringBuilder형을 String으로 바꾸어주었다.
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(" ");
br.close();
int a = Integer.parseInt(new StringBuilder().append(str[0]).reverse().toString());
int b = Integer.parseInt(new StringBuilder().append(str[1]).reverse().toString());
System.out.println(a>b?a:b);
}
}
'문제 풀이' 카테고리의 다른 글
[백준] 2444번: 별 찍기 - 7 - JAVA (자바) (0) | 2023.08.06 |
---|---|
[백준] 11718번: 그대로 출력하기 - JAVA (자바) (0) | 2023.08.06 |
[백준] 1152번: 단어의 개수 - JAVA (자바) (0) | 2023.06.28 |
[백준] 2675번: 문자와 문자열 - JAVA (자바) (0) | 2023.06.27 |
[백준] 10809번: 알파벳 찾기 - JAVA (자바) (0) | 2023.06.26 |