[Programmers] 나누어 떨어지는 숫자배열 (Javascript)

반응형

문제 링크

문제

입출력

코드

배열과 나눌 값을 매개변수로 받아서 나눌 값으로 나누었을 때 나누어 떨어지는 값들을 리턴하는 문제이다.

배열을 반복문을 사용해서 하나씩 꺼내주고 값들을 divisor 매개변수로 나누어서 나머지가 0이 되면 result 배열에 push하도록 한다. 그리고 난 후 오름차순을 해주기 위해 sort함수를 이용하여 정렬을 하는데 처음에는 그냥 sort를 했었는데 그렇게 하다보니 애초에 오름차순으로 되어있는 값들은 내림차순으로 바뀌어서 방법을 찾아보다가 다른 분들의 코드를 보고 배울 수 있었다.

오름차순 : 배열.sort((a,b)=>a-b)
내림차순 : 배열.sort((a,b)=>b-a)
function solution(arr, divisor) {
    let result = [];
    for(let i = 0; i < arr.length; i++) {
        if(arr[i] % divisor == 0){
            result.push(arr[i]);
        }
    }
    result.sort((a,b)=>a-b); // 오름차순
    
    if(result.length == 0) {
        result.push(-1);
        return result;
    } else {
        return result;
    }
}

 

반응형