반응형
※ 본 내용은 완전한 정답이 아닐 수 있고 개인의 기준에 맞춰 작성한 코드입니다. 참고만 해주세요 !
▶ 문제 설명 ◀
사용언어 : JAVA
array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요.
divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요.
▶ 제한 사항 ◀
˙ arr은 자연수를 담은 배열입니다.
˙ 정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다.
˙ divisor는 자연수입니다.
˙ array는 길이 1 이상인 배열입니다.
import java.util.ArrayList;
class Solution {
public int[] solution(int[] arr, int divisor) {
ArrayList<Integer> arraylist = new ArrayList<Integer>();
int cnt = 0;
for(int i=0; i<arr.length; i++){
if(arr[i] % divisor == 0){
arraylist.add(arr[i]);
cnt++;
}
}
if(cnt == 0){
int[] answer = {-1};
return answer;
}
else{
int[] answer = new int[arraylist.size()];
for(int i=0; i< answer.length; i++){
answer[i] = arraylist.get(i).intValue();
}
for(int i=0; i<answer.length-1; i++){
for(int j=0; j<answer.length-1-i; j++){
if(answer[j] > answer[j+1]){
int temp = answer[j];
answer[j] = answer[j+1];
answer[j+1] = temp;
}
}
}
return answer;
}
}
}
반응형
'코딩 기록 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 문자열 내림차순으로 배치하기 (0) | 2021.03.25 |
---|---|
[프로그래머스] 문자열 내 p와 y의 개수 (0) | 2021.03.25 |
[프로그래머스] 가운데 글자 가져오기 (0) | 2021.03.25 |
[프로그래머스] 완주하지 못한 선수 (0) | 2021.03.25 |
[프로그래머스] 두 개 뽑아서 더하기 (0) | 2021.03.25 |