문제 설명
상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다.
상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다.
두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오.
입출력
input | result |
734 893 | 437 |
221 231 | 132 |
문제 풀이
const fs = require("fs");
let input = fs.readFileSync("./input.txt").toString().trim().split(' ')
input = input.map((a)=>{
let reversed = a.split('').reverse().join('')
return reversed
})
input.map(Number)
console.log(input[0]>input[1]?input[0]:input[1])
입력은 공백을 기준으로 나누고 있어 같은 기준의 배열로 만들어주었다.
그리고 map 함수를 통해 input의 요소인 734, 893을 한글자씩 나누면서 reverse했다.
현재 input 은 [ [ '4', '3', '7' ], [ '3', '9', '8' ] ] 이렇게 출력된다.
split해서 요소가 각 글자로 나눈 배열이 되었고, 이를 뒤집은 것이다.
여기서 437, 398의 크기를 비교해야 하므로, 각 요소를 join하여 합쳐준다.
문자열인 상태에서 뒤집어주었기 때문에 number로 바꾸고 비교하여 큰 값을 출력한다.
코멘트
map함수에 아주 조금은 익숙해진 것 같다.
728x90
'개발 > 코딩테스트' 카테고리의 다른 글
[백준 | JavaScript] 1157 단어 공부 (0) | 2023.05.22 |
---|---|
[백준 | JavaScript] 10988 팰린드롬인지 확인하기 (1) | 2023.05.21 |
[프로그래머스 | JavaScript] 추억 점수 (풀이 2개) (0) | 2023.05.20 |
[프로그래머스 | JavaScript] 가장 가까운 같은 글자 (0) | 2023.05.20 |
[백준 | JavaScript] 1152 단어의 개수 (1) | 2023.05.19 |