본문 바로가기
Java/알고리즘

나누어 떨어지는 숫자 배열(향상된 for문 꿀팁 idx++)

by 티코딩 2024. 1. 16.

 

배열에 대한 이해가 필요한 문제였다. 레벨1치고 고전했던 문제다. 현타가 좀 왔다.

 

public static int[] solution(int[] arr, int divisor) {
        int[] resultArray;

        // 나누어 떨어지는 값 개수 계산
        int count = 0;
        for (int num : arr) {
            if (num % divisor == 0) {
                count++;
            }
        }
        if (count == 0) {
            resultArray = new int[]{-1};
        } else {
            // 나누어 떨어지는 값이 있는 경우 배열에 담고 정렬하기
            resultArray = new int[count];
            int index = 0;
            for (int num : arr) {
                if (num % divisor == 0) {
                    resultArray[index++] = num;
                }
            }
            Arrays.sort(resultArray);
        }

        return resultArray;
    }

 

향상된 for문에 index++ 해서 넣는걸 몰라서 ArrayList를 만들어 넣고 다시 형변환 하려는 시도도 해봤지만 이렇게 푸는게 베스트다.

향상된 for문 index++은 정말 앞으로도 많이 써먹을거같다.

 

'Java > 알고리즘' 카테고리의 다른 글

핸드폰 번호 가리기  (0) 2024.01.18
없는 숫자 더하기  (0) 2024.01.17
서울에서 김서방 찾기, "==" 와 ".equals()"의 차이  (0) 2024.01.12
음양 더하기  (0) 2024.01.12
콜라츠 추측  (0) 2024.01.09