본문 바로가기
프로그래머스/[프로그래머스 - JAVA] Lv.1

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

by 코딩하는 흰둥이 2023. 3. 25.


  • 내 풀이
import java.util.List;
import java.util.Arrays;
import java.util.ArrayList;
class Solution {
    public int[] solution(int[] arr, int divisor) {
        int[] answer = {};
		
        // answer에 들어갈 값의 크기 확인
        int count =0;
		
        // 나누어 떨어지는 값을 넣기 위한 List
        List<Integer> check = new ArrayList<>();
	// arr의 크기만큼 for문을 돌려서 나누어 떨어지는 값이 있다면 List에 담고 count 증가
        for (int i = 0; i < arr.length; i++) {
            if (arr[i] % divisor == 0){
                check.add(arr[i]);
                count++;
            }
        }
		
        // count가 증가되지 않았다면 answer에 -1 return
        if(count == 0){
            answer = new int[]{-1};
        }else {
        	// count 가 증가된 값으로 answer 크기 초기화
            answer = new int[count];
            // List 값을 오름차순으로 정렬하여 배열에 넣어줌
            answer = check.stream().sorted().mapToInt(Integer::intValue).toArray();
        }
        return answer;
    }
}

 

 

  • 다른 사람 풀이

문제가 개편되어 다른 사람 풀이가 의미가 없어졌다

해당 문제를 풀고 다른 사람이 작성한 코드를 따로 확인하길 바란다

댓글