풀이
function solution(n) {
return Number(n.toString().split('').sort((a,b) => b-a).join(''))
}
다채로운 method 를 쓰기 위해 먼저 정수들을 string 으로 변환 해주고 하나하나 나누어서 내림차순으로 정렬해준다음 다시 붙였다. 그러면 원하는대로 873211 이지만 값이 string 이기에 Number() 로 감싸서 다시 정수로 만들어주어야 한다.
다른사람 풀이
function solution(n) {
const newN = n + "";
const newArr = newN
.split("")
.sort()
.reverse()
.join("");
return +newArr;
}
이분은 처음에 정수를 string 으로 바꾸고 각자 나누어 바로 낮은순에서 높게 정렬 한것을 reverse 로 뒤집고 붙였다.
그다음 + 를 붙여 정수로 나타나게 한것같다.
바로 내림차순으로 안해도 된다는 생각을 못했다.
토대로
function solution(n) {
return +(n.toString().split('').sort((a,b) => b-a).join(''));
}
도 맞게 된다.
'코드 풀이' 카테고리의 다른 글
정수 제곱근 판별 (0) | 2022.03.14 |
---|---|
제일 작은 수 제거하기 (0) | 2022.03.14 |
자릿수 더하기 (0) | 2022.03.12 |
자연수 뒤집어 배열로 만들기 (0) | 2022.03.12 |
이상한 문자 만들기 (0) | 2022.03.12 |