Algorithm/Programmers
[프로그래머스] n의 배수 고르기
_silver
2025. 3. 8. 01:51
문제 1. n의 배수 고르기
☑️ 문제 바로 풀기 클릭

나의 문제 풀이
import java.util.ArrayList;
import java.util.List;
class Solution {
public int[] solution(int n, int[] numlist) {
// n의 배수를 저장할 리스트 생성(담을 그릇 준비하기)
List<Integer> list = new ArrayList<>();
// numlist의 값들을 리스트에 추가
for(int i = 0; i < numlist.length; i++) {
if(numlist[i] % n == 0) // n의 배수인지 확인
list.add(numlist[i]); // n의 배수만 추가
}
// List<Integer>를 int[]로 변환하기
int[] answer = new int[list.size()];
// 리스트 값을 배열에 복사하기
for(int i = 0; i < list.size(); i++) {
answer[i] = list.get(i);
}
return answer;
}
}
코드 설명
1. (담을 그릇 준비하기) n의 배수를 저장할 리스트를 생성한다.
2. 배열을 처음부터 끝까지 반복하면서 숫자를 확인한다.
3. numlist[i] 인덱스에 있는 숫자가 n의 배수인지 확인한다
- 0으로 나머지가 떨어지면 된다!
4. n의 배수가 맞다면 numlist[i] 에 하나씩, 하나씩 넣는다.
- 숫자를 리스트에 추가(add) 한다.
5. 리스트 크기만큼 새로운 int[] 배열을 생성한다.
6. 리스트에 저장된 값을 새로운 배열에 복사한다.
7. n의 배수만 담긴 배열을 반환한다.