본문 바로가기
알고리즘 스터디/프로그래머스 스킬체크 레벨 1(끝)

[프로그래머스 스킬체크 레벨 1] 정수 내림차순으로 배치하기 문제 풀이 및 설명 - 자바스크립트[JavaScript]

by 레일라오리덕 2021. 7. 13.
728x90

https://programmers.co.kr/learn/courses/30/lessons/12933

 

코딩테스트 연습 - 정수 내림차순으로 배치하기

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

programmers.co.kr

 

문제

 

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

 

 

제한 사항

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

결괏값 예시

 

n return
118372 873211

 

기본 제공 틀

 

function solution(n) {
    var answer = 0;
    return answer;
}

풀이 [JavaScript]

 

728x90

이번 문제에서는 들어온 n값을 문자열로 바꾸어서 값을 split해주었고, 그 이후에 split한 값을 array에 넣어주고 array안에 있는 값들은 숫자이기 때문에, 숫자에 적용할 수 있는 sort함수, (a, b) => b-a 를 사용해서 정렬해 주었습니다.(내림차순)

그 후, array에 있는 값들을 answer라는 문자열에 넣어주고 그 값을 다시 숫자로 바꾸어 정수를 리턴할 수 있는 로직을 구현했습니다.

 

function solution(n) {
    var answer = '';
    var array = String(n).split('');
    array.sort((a, b) => b - a);
    for(var i in array){
        answer += array[i];
    }
    return Number(answer);
}

 

채점 결과 [JavaScript]

 

728x90

댓글