스파르타 (React_6기) 본캠프

2024. 08. 14. (알고리즘 - 정수 내림차순으로 배치하기)

cha123hein 2024. 8. 14. 09:44

★ 문제

함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.

(n은 1이상 8000000000 이하인 자연수입니다.)

 

★ 문제 해결 과정

우선 바로 sort함수를 써야한다 생각했다. sort함수는 문자배열을 받기 때문에 때문에 변환이 필요했다.

1. n을 문자열로 바꾼다.(toString)

2. 문자열을 쪼개어 개별배열안에 넣는다.(split)

3. sort를 이용하여 내림차순으로 순서를 배열한다.(sort)

4. 정열된 배열을 다시 하나의 문자열로 합친다.(join)

5. 문자열을 숫자로 다시 변환한다.(Number)

 

★ 제출한 문제 답안

function solution(n) {
return Number(n.toString().split('').sort((a,b) => b-a).join(''))
}