
array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요.
divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요.
i,j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] | arr | divisor | return |
|---|---|---|
| [5, 9, 7, 10] | 5 | [5, 10] |
| [2, 36, 1, 3] | 1 | [1, 2, 3, 36] |
| [3,2,6] | 10 | [-1] |
sort()로 오름차순 정렬배열 요소 % divisor === 0인 조건만filter()answer의 배열의 길이가 0인 경우[-1]를 아니면answer리턴
function solution(arr, divisor) {
const answer = arr.sort((a,b)=>a-b).filter(elem => elem %divisor === 0)
return answer.length === 0 ? [-1] : answer
}
테스트 6번에 대한 러닝타임 줄이기
function solution(arr, divisor) {
const answer = arr.filter(elem => elem %divisor === 0)
return answer.length === 0 ? [-1] : answer.sort((a,b)=>a-b)
}
조건에 맞는 값을 return할때만 sort실행
테스트 6번 2.21ms (총 24ms 가량 러닝타임 줄어들었다.)