
import java.util.*;
class Solution {
public int[] solution(int[] arr, int divisor) {
int count = 0;
int number = 0;
for(int i = 0; i < arr.length; i++){ //count로 총 나누어지는 수가 몇개인지 파악
if(arr[i] % divisor == 0){
count++;
}
}
if(count == 0){ //나누어지는 수가 없다면 -1 배열 반환
int[] answer = {-1};
return answer;
}
int[] answer = new int[count]; //총 나누어지는 수의 개수만큼 answer배열 크기 정하기
for(int i = 0; i < arr.length; i++){ // 나누어질때마다 차례대로 저장하기 그래야 빈 인덱스없이 배열 만들수있음
if(arr[i] % divisor == 0){
answer[number] = arr[i];
number++;
}
}
Arrays.sort(answer); // 정렬하기
return answer;
}
}
반복문을 활용하여 풀면 간단히 풀 수 있는 문제였다.
'프로그래머스 문제 풀이' 카테고리의 다른 글
| Lv1 - 크기가 작은 부분 문자열 (0) | 2025.02.18 |
|---|---|
| Lv1 - 두 정수 사이의 합 (0) | 2025.02.15 |
| Lv0 - 등차수열의 특정한 값만 더하기 (0) | 2025.02.07 |
| Lv0 - 원소들의 곱과 합 (0) | 2025.02.07 |
| Lv0 - 주사위 게임 2 (0) | 2025.02.07 |