문제:
array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요.
divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요.

제한사항
   - arr은 자연수를 담은 배열입니다.
   - 정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다.
   - divisor는 자연수입니다.
   - array는 길이 1 이상인 배열입니다.

 

문제 풀어보기: https://school.programmers.co.kr/learn/courses/30/lessons/12910?language=javascript

 

 

풀이 보기
더보기
function solution(arr, divisor) {
    let nums = [];
    
    arr.forEach((_, i) => {
        if(arr[i] % divisor === 0) nums.push(arr[i]);
    })
    
    return nums.length === 0 ? [-1] : nums.sort((a,b) => a - b);
}

먼저 나누어 떨어지는 값을 담을 배열 nums를 선언하고,

arr 배열을 순회하며 divisor로 나누어 떨어지는 값을 nums에 넣는다.

나누어 떨어지는 값이 없다면 -1을 반환해야하기 때문에 nums가 비어있는지 확인하고,

비어있지않으면 nums 배열을 오름차순으로 정렬하여 return 해주면 끝!

+ Recent posts