정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다.
import java.util.*;
class Solution {
public int[] solution(int[] arr) {
if(arr.length==1){
int[] answer={-1};
return answer;
}
List<Integer> li= new ArrayList<>();
for(int a : arr){
li.add(a);
}
Arrays.sort(arr);
int small=arr[0];
li.remove(Integer.valueOf(small));
int[] answer = new int[li.size()];
for(int i=0 ;i<li.size();i++){
answer[i]=li.get(i);
}
return answer;
}
}
제일 작은수를 찾기 위해 오름차순 정렬을 하고
그럼 첫번째 수가 젤작으니 미리 빼놨던list 에서 그 수를 빼버리고
배열형태로 저장해주면 끝!!
'자바 알고리즘 문제' 카테고리의 다른 글
| 콜라츠 추측 (0) | 2024.06.04 |
|---|---|
| 가운데 글자 가져오기 (0) | 2024.06.04 |
| 핸드폰 번호 가리기 (0) | 2024.05.31 |
| 나누어 떨어지는 숫자 배열 (0) | 2024.05.31 |
| 없는 숫자 더하기 (0) | 2024.05.30 |