SMALL
1. 오름차순으로 정렬한 배열을 반환하기 때문에 배열을 오름차순으로 정렬
2. for 반복문으로 arr를 돌며 divisor로 나누었을 때 나머지가 0인 경우 answer 에 push
3. 나머지가 0이 아닌 경우 -1 을 push
function solution(arr, divisor) {
var answer = [];
arr.sort(function(a, b) {
return a - b;
}); // 오름차순으로 정렬
for(let i = 0; i < arr.length; i++) {
if(arr[i] % divisor === 0) { // arr를 돌며 i번째가 divisor로 나누어 0일 때
answer.push(arr[i]); // answer에 넣어준다
} else {
answer.push(-1) // 아닌 경우 -1 을 넣는다
}
}
return answer;
}
문제점: 아닌 경우가 많은 경우 answer에 -1이 들어가 정답과 다름
해결 방법: if문을 하나 더 만들어 answer에 할당
function solution(arr, divisor) {
var answer = [];
arr.sort(function(a, b) {
return a - b;
});
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;
}
LIST
'Develop_story > programmers(알고리즘 문제)' 카테고리의 다른 글
programmers 문자열 내 p와 y 개수 (0) | 2023.02.02 |
---|---|
programmers 내적 (0) | 2023.02.02 |
programmers 부족한 금액 계산하기 (0) | 2023.01.28 |
programmers x만큼 간격이 있는 n개의 숫자 (0) | 2023.01.27 |
programmers 핸드폰 번호 가리기 (0) | 2023.01.27 |