주니어 기초 코딩공부/JAVA_programmers_코딩테스트

n의 배수 고르기_programmers_lev00

jju_developer 2022. 12. 4. 19:01
728x90

<코딩 테스트>

정수 n과 정수 배열 numlist가 매개변수로 주어질 때, numlist에서 n의 배수가 아닌 수들을 제거한 배열을 return하도록 solution 함수를 완성해주세요.

 

<나의 풀이 과정>

우선, 처음 풀이를 할때에는 ArrayList를 사용하지 않고 풀었는데,

answer 배열의 길이를 초기화 할때 numlist 배열의 길이로는 초기화를 할수가 없기 때문에

ArrayList로 배열의 길이를 모를때 사용하기 좋게끔 코딩을 해보았습니다.

 

<나의 풀이 코드>

import java.util.ArrayList;
class Solution {
    public int[] solution(int n, int[] numlist) {
		ArrayList<Integer> answer_AL = new ArrayList<>();

		for (int i = 0; i < numlist.length; i++) {
			if (numlist[i] % n == 0) {
				answer_AL.add(numlist[i]);
			}
		}
		int[] answer = new int[answer_AL.size()];
		for (int j = 0; j < answer_AL.size(); j++) {
			answer[j]= answer_AL.get(j);
		}
		
		return answer;
		
	}
}

<다른사람 풀이 1>

import java.util.*;

class Solution {
    public ArrayList solution(int n, int[] numlist) {

        ArrayList<Integer> answer = new ArrayList<>();

        for(int num : numlist){
            if(num % n == 0){
                answer.add(num);
            }
        }

        return answer;
    }
}

 

<다른사람 풀이 2>

import java.util.Arrays;

class Solution {
    public int[] solution(int n, int[] numList) {
        return Arrays.stream(numList).filter(value -> value % n == 0).toArray();
    }
}
728x90