Deep_Dev
article thumbnail

๋ฌธ์ œ ์„ค๋ช…

array์˜ ๊ฐ element ์ค‘ divisor๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ๊ฐ’์„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”.
divisor๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” element๊ฐ€ ํ•˜๋‚˜๋„ ์—†๋‹ค๋ฉด ๋ฐฐ์—ด์— -1์„ ๋‹ด์•„ ๋ฐ˜ํ™˜ํ•˜์„ธ์š”. 

 
์ œํ•œ์‚ฌํ•ญ
  • arr์€ ์ž์—ฐ์ˆ˜๋ฅผ ๋‹ด์€ ๋ฐฐ์—ด์ž…๋‹ˆ๋‹ค.
  • ์ •์ˆ˜ i, j์— ๋Œ€ํ•ด i ≠ j ์ด๋ฉด arr[i] ≠ arr[j] ์ž…๋‹ˆ๋‹ค.
  • divisor๋Š” ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค.
  • array๋Š” ๊ธธ์ด 1 ์ด์ƒ์ธ ๋ฐฐ์—ด์ž…๋‹ˆ๋‹ค.
์ž…์ถœ๋ ฅ ์˜ˆ
[5, 9, 7, 10] 5 [5, 10]
[2, 36, 1, 3] 1 [1, 2, 3, 36]
[3,2,6] 10 [-1]

 


Divisor๋กœ ๋‚˜๋‰˜์–ด ๋–จ์–ด์ง€๋Š” ์ˆ˜๋ฅผ ๋”ฐ๋กœ ArrayList์— ๋‹ด๊ณ 

๋งŒ์•ฝ์— ๋‹ด๊ธด ๊ฐ’์ด ์—†๋‹ค๋ฉด ๋ฐ”๋กœ -1์„ ๋„ฃ์–ด์ฃผ๊ณ ,

๊ฐ’์ด ์žˆ๋‹ค๋ฉด ํ•ด๋‹น ๊ฐ’๋“ค์„ ๋‹ค์‹œ ๋ฐฐ์—ด์— ๋„ฃ์–ด์„œ sort๋กœ ์ •๋ ฌํ•˜๋Š” ๋ฐฉ์‹์„ ์ƒ๊ฐํ–ˆ๋‹ค.


 

 

import java.util.*;
class Solution {
    public int[] solution(int[] arr, int divisor) {
        int[] answer={};
        ArrayList<Integer> aList=new ArrayList<>();
        // divisor๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋ฉด ArrayList์— ์ถ”๊ฐ€
        for(int i=0; i<arr.length; i++){
            if(arr[i]%divisor==0){
                aList.add(arr[i]);
            }
        }
        // ๋งŒ์•ฝ์— ์ถ”๊ฐ€๋œ ๊ฐ’์ด ์—†๊ณ  ๋น„์–ด์žˆ๋‹ค๋ฉด -1
        if(aList.isEmpty()){
            aList.add(-1);
        }
        answer= new int[aList.size()];
        // ArrayList์˜ ๊ฐ’์„ ๋ฐฐ์—ด answer์— ๊ฐ€์ ธ์˜ค๊ธฐ
        for(int i=0; i<aList.size(); i++){
            answer[i]=aList.get(i);
        }
        // ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ
        Arrays.sort(answer);
        return answer;
    }
}