출처
백준 온라인 저지
https://www.acmicpc.net/problem/2908
문제
상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다.
상근이는 세 자릿수 두 개를 칠판에 써주었다. 그다음에 크기가 큰 수를 말해보라고 했다.
상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다.
두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오.
풀이
입력되는 a와 b의 두 수를 거꾸로 뒤집어 ( 734 => 437 ) a와 b의 수를 비교하여 큰 수를 출력하면 되는 문제입니다.
숫자를 뒤집는 부분은 숫자를 문자열로 만들어 각 자릿수마다 쪼개 배열로 만들어줍니다.
reverse 메서드를 사용하여 배열의 값을 뒤집고 join 메서드로 다시 합쳐주고, 삼합 연산자를 이용하거나 Math.max 메서드를 사용하여 큰 값을 구해줍니다.
코드
const input = require('fs').readFileSync('/dev/stdin').toString().trim().split(" ");
const [a, b] = input.map(v => [...v].reverse().join(''));
console.log(a > b ? a : b);
// console.log(Math.max(a, b));