코드 풀이

정수 내림차순으로 배치하기

SammyK 2022. 3. 12. 18:45

풀이

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