데블 아니고 데블리

운동,햄버거, 개발 좋아요

🐷💻📝

카테고리 없음

[백준_2098] 상수

데블아니고데블리 2024. 3. 28. 21:06

[문제]

(아니 상수가 이름일 줄이야..)

상수라는 친구가 숫자를 거꾸로 읽는다. 734, 893을 읽어보라고 하면 437, 398이라고 읽고 , 큰 수는 437이라고 말한다고 한다.

두 수가 주어질 때 상수의 답을 출력하세요.

 

[입력]

첫째 줄에 상근이가 칠판에 적은 두 수 A와 B가 주어진다. 두 수는 같지 않은 세 자리 수이며, 0이 포함되어 있지 않다.

 

[출력]

첫째 줄에 단어의 개수를 출력한다.

 

[입력 예시 /  출력예시]

734 893 / 437
221 231 / 132
839 237 / 938

1. 버퍼를 이용해 문자를 입력받고

2. 읽어 온 숫자를 거꾸로 뒤집고

3. 거꾸로 뒤집는거 다시 형변환

4. 더 큰 값 출력하기

 

package src.com.company.day2;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class BJ_2908_상수 {
    //상수씨..가... 이름
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        String[] input = br.readLine().split(" ");

        // 읽어온 숫자로 된 문자열 거꾸로 뒤집기
        StringBuilder reversedA = new StringBuilder(input[0]).reverse();
        StringBuilder reversedB = new StringBuilder(input[1]).reverse();

        // 거꾸로 뒤집은거 다시 int 로 형변환
        int reversedIntA = Integer.parseInt(reversedA.toString());
        int reversedIntB = Integer.parseInt(reversedB.toString());

        // 더 큰 값 출력하기
        System.out.println(Math.max(reversedIntA, reversedIntB));

    }

}

 

그러나.. 한줄코드가 있다고 한다,

package src.com.company.day2;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class BJ_2908_상수_2 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine(), " ");

        int A = Integer.parseInt(new StringBuilder(st.nextToken()).reverse().toString());
        int B = Integer.parseInt(new StringBuilder(st.nextToken()).reverse().toString());

        System.out.println(A > B ? A : B);

    }
}