관리 메뉴

The Nirsa Way

[프로그래머스 Lv1] 나누어 떨어지는 숫자 배열 본문

코딩 테스트/프로그래머스

[프로그래머스 Lv1] 나누어 떨어지는 숫자 배열

KoreaNirsa 2023. 12. 16. 13:20
반응형

 

문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/12910

 

[프로그래머스 Lv1] 나누어 떨어지는 숫자 배열

임시로 담을 ArrayList를 하나 생성하고, 0으로 나누어 떨어지는 수를 담습니다.

ArrayList<Integer> returnArr = new ArrayList<>();

for(int i=0; i<arr.length; i++) {
    if(arr[i] % divisor == 0) {
        returnArr.add(arr[i]);
    }
}

 

이후 반환할 answer 배열을 returnArr의 크기만큼 생성하고, 만약 answer의 크기가 0이면 0으로 나누어떨어지는 숫자가 없었다는 의미이기 때문에 -1을 반환하여 종료합니다.

int[] answer = new int[returnArr.size()];

if(answer.length == 0) {
    int[] answerFailed = {-1};
    return answerFailed;
}

 

마지막으로 returnArr의 크기만큼 반복하여 answer에 저장하고, Arrays.sort를 사용하여 오름차순으로 정렬 후 반환합니다.

for(int i=0; i<returnArr.size(); i++) {
    answer[i] = returnArr.get(i);
}

Arrays.sort(answer);

return answer;
반응형