728x90
문제 설명
함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.
입출력 예
| n | return |
| 118372 | 873211 |
나의 풀이
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
function solution(n) {
const answer = String(n).split('')
const numAnswer = answer.map((item) => {
return Number(item)
})
const sortAnswer = numAnswer.sort((a,b)=>{
return b-a
})
return Number(sortAnswer.join(''));
}
|
cs |
문제를 풀며 느낀 점
- answer에 문자열로 형 변환을 한 매개변수 n을 split함수로 ''마다 분리해서 넣었습니다
- 그 후 numAnswer에 answer.map()을 통해서 들어온 item들을 Number()를 통해 다시 숫자로 형 변환 해주었고
- 그 후 sort()함수를 이용해서 내림차순 정렬한 값을 sortAnswer에 할당하였고
- 결과 값으로 join함수를 통해서 정렬된 sortAnswer array를 ''단위로 연결하였고 Number를 통해 형 변환 후 return 하였습니다.