- 내 풀이
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;
}
}
- 다른 사람 풀이
문제가 개편되어 다른 사람 풀이가 의미가 없어졌다
해당 문제를 풀고 다른 사람이 작성한 코드를 따로 확인하길 바란다
'프로그래머스 > [프로그래머스 - JAVA] Lv.1' 카테고리의 다른 글
[프로그래머스 - JAVA] x만큼 간격이 있는 n개의 숫자 (0) | 2023.03.26 |
---|---|
[프로그래머스 - JAVA] 평균 구하기 (0) | 2023.03.26 |
[프로그래머스 - JAVA] 자릿수 더하기 (0) | 2023.03.26 |
[프로그래머스 - JAVA] 약수의 합 (0) | 2023.03.25 |
[프로그래머스 - JAVA] 짝수와 홀수 (0) | 2023.03.25 |
댓글