728x90
문제
정답 처리된 코드(1)
function solution(arr, divisor) {
var answer = [];
for(let i=0; i<arr.length; i++){
if( arr[i] % divisor === 0) answer.push(arr[i]);
}
if(answer.length === 0) answer.push(-1);
answer.sort((a, b) => (a-b));
return answer;
}
문제 이해
1) arr 배열 길이만큼 회전하면서 divisor와 나눈 나머지가 0인 값을 answer 배열에 push 한다.
2) answer 배열 길이가 0이면 나누어 떨어지는 값이 없다는 의미이므로 -1을 push 한다.
3) 오름 차순 정렬을 위한 처리를 한다.
정답 처리된 코드(2)
다른 사람의 풀이에서 좋아요가 가장 많은 코드이다.
function solution(arr, divisor) {
var answer = [];
answer = arr.filter(v => v%divisor === 0);
answer = answer.length === 0 ? [-1] : answer.sort((a,b) => a-b);
return answer;
}
문제 이해
1) filter를 활용한 예시를 확인할 수 있다.
2) answer 배열이 0일 때와 오름 차순 정렬 방법을 확인할 수 있다.
출처: programmers.co.kr/learn/courses/30/lessons/12910?language=javascript
'알고리즘, 자료구조 > 프로그래머스' 카테고리의 다른 글
[프로그래머스/javascript] 문자열 내 마음대로 정렬하기 (0) | 2021.04.07 |
---|---|
[프로그래머스/javascript] 문자열 내림차순으로 배치하기 (0) | 2021.04.07 |
[프로그래머스/javascript] 같은 숫자는 싫어 문제 풀기 (0) | 2021.04.07 |
[프로그래머스/javascript] 평균 구하기 (0) | 2021.04.07 |
[프로그래머스/javascript] 짝수와 홀수 문제 풀기 (0) | 2021.04.06 |