function solution(arr) {
// arr의 길이가 1이라면 가장 작은 수가 자기 자신이므로
// 삭제하면 길이가 0이되어, [-1]을 반환해야한다.
if(arr.length === 1){
return [-1];
} else {
// arr 배열의 최소값을 구한다.
let min = Math.min(...arr);
// min 값을 활용하여 해당 값의 인덱스를 구한다.
let index = arr.indexOf(min);
// splice는 원본 배열을 변화시킨다.
// index번 인덱스부터 1개의 원소를 삭제한다.
arr.splice(index, 1);
return arr;
}
}
문제의 두 번째 조건인
인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다.
최솟값이 여러 개가 나올 수 없다는 것을 간접적으로 알려준다.
값이 중복되지 않으면 최솟값은 하나일 수 밖에 없기 때문이다.
그래서 indexOf를 사용해도 문제가 없었다.