728x90
반응형
SMALL
제목 : 상수 (no.2908)
문제 출처
문제
상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다.
상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다.
두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오.
Input
첫째 줄에 상근이가 칠판에 적은 두 수 A와 B가 주어진다. 두 수는 같지 않은 세 자리 수이며, 0이 포함되어 있지 않다.
Output
첫째 줄에 상수의 대답을 출력한다.
Ex.Input 1
734 893
Ex.Output 1
437
Ex.Input 2
221 231
Ex.Output 2
132
Ex.Input 3
839 237
Ex.Output 3
938
Code
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner xx = new Scanner(System.in);
int nu1 = xx.nextInt();
int nu2 = xx.nextInt();
nu1 = Integer.parseInt(new StringBuilder().append(nu1).reverse().toString());
nu2 = Integer.parseInt(new StringBuilder().append(nu2).reverse().toString());
System.out.println(nu1 > nu2 ? nu1 : nu2);
}
}
설명
입력받은 상수를 뒤집어서 대소를 비교만하면 되는 간단한 문제였다.
고로 입력받은 상수를 뒤집는 방법을 알아야한다
뒤집는방법은 정말 수많은 방법이 있다
심지어 문제에서는 3자리수로만 주어진다 했기에 하드코딩도 가능하다.
하지만 최대한 하드코딩을 하지않고 사용하는 연습을 해야하기에
위와같이 빠르게 코드를 짤 수 있는 방법으로 풀었다.
숫자를 뒤집는건 정말 많은 방법이 있겠지만 그중 하나더 추가하자면 아래와 같은 코드이다
int result = 0;
String str = String.valueOf(nu1);
for (int i = str.length() - 1; i >= 0; i--) {
result = result * 10 + (str.charAt(i) - '0');
}
System.out.println("뒤집기 결과 = "+result);
티스토리와 깃허브 홈
오류나 궁금하신점은
아래 댓글로 알려주시면 감사하겠습니다.
728x90
반응형
LIST
'백준' 카테고리의 다른 글
[JAVA] 백준 2441. (0) | 2023.11.06 |
---|---|
[JAVA] 백준 2440. (0) | 2023.10.26 |
[JAVA] 백준 2566. (0) | 2023.10.23 |
[JAVA] 백준 2738. (0) | 2023.10.19 |
[JAVA] 백준 2675. (1) | 2023.10.17 |