문제
답안
function solution(arr, divisor) {
let answer = [];
let cnt = 0;
for(let i = 0; i < arr.length; i++){
if(arr[i] % divisor === 0){
answer.push(arr[i]);
}
}
if(answer.length === 0){
answer.push(-1);
}
return answer.sort((a,b)=> a - b);
}
참고답안
function solution(arr, divisor) {
var answer = arr.filter(v => v % divisor == 0);
console.log(answer);
return answer.length == 0 ? [-1] : answer.sort((a,b)=>a-b);
}
후기
arr의 i번째 있는 값을 divisor로 나눠 나머지가 0이면 answer에 arr[i] 값을 넣는다.
만약 answer의 길이가 0이면 answer에 -1 값을 넣고, 아니면 배열을 오름차순 시켜준다.
filter, map, reduce 등등 연습하자!
복잡한 코드를 많이 줄일 수 있다!
728x90
'자바스크립트 코딩테스트' 카테고리의 다른 글
프로그래머스 Level 1 - 핸드폰 번호 가리기 (Javascript) (0) | 2023.11.12 |
---|---|
프로그래머스 Level 1 - 없는 숫자 더하기 (Javascript) (0) | 2023.11.10 |
프로그래머스 Level 1 - 모의고사 (Javascript) (0) | 2023.11.08 |
프로그래머스 Level 1 -음양 더하기 (Javascript) (0) | 2023.11.07 |
프로그래머스 Level 1 -서울에서 김서방 찾기 (Javascript) (0) | 2023.11.06 |