[Javascript] 프로그래머스 - 정수 내림차순으로 배치하기

Isabel·2022년 3월 15일
0

알고리즘 문제풀이

목록 보기
23/36

문제 설명

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

제한 조건

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

입출력 예

문제 풀이

function solution(n) {
    var answer = 0;
    let arr = [];

    let str = n.toString()  // 숫자를 string으로 변환
    for(let i = 0; i < str.length; i++){  
        arr = str.split("")  // str형태의 숫자를 한글자씩 떼어내어 arr 배열에 넣음
        arr.sort(function(a, b){  // 오름차순 (작은 숫자가 앞으로)
            return a-b
        })
    }
    for(let j = 0; j < arr.length; j++){
			// 각 배열의 string 숫자들을 각각 integer로 변환해준 뒤 맨 뒤에 올 숫자부터 
			//*1. *10, *100 의 순으로 곱해주어 각 자리수를 만듦
        arr[j] = parseInt(arr[j]) * (10 ** j)) 
        answer += arr[j]
    }
    return answer
}

제곱한 값 구하기 ⇒ n ** m

n의 m제곱을 구하고 싶다면
⇒ n ** m

(ex. 3의 2제곱 ⇒ 3 ** 2)

0개의 댓글