function solution(arr) {
if (arr.length > 1) {
const deleteArr = [...arr].sort();
const index = arr.indexOf(deleteArr[0]);
arr.splice(index, 1);
return arr;
} else if ((arr.length = 1)) {
return [-1];
}
}
근데 테스트 2개는 통과했는데, 제출 후 채점하니 3개 정확성 부족
(?) 뭐가문젤까??
(2022/07/27 update)
이것도 마찬가지로 2자리 수가 넘거나, 음수일 때 sort를 하면 문제가 생긴다
sort
를 정확히 오름차순으로 배열하기 위해서는 () 안에 비교함수를 넣어줘야함
const arr = [-10, -23, -34, -1, -2]
arr.sort(); // 결과 [-1, -10, -2, -23, -34]
비교함수를 넣지 않으면 아주 엉망진창이됨!
arr.sort((a,b) => a-b)
arr.sort((a,b) => b-a)
그래서 sort함수만 살짝 수정해서 해결 완료~!
function solution(arr) {
if (arr.length > 1) {
const deleteArr = [...arr].sort((a, b) => {
return a - b;
});
const index = arr.indexOf(deleteArr[0]);
arr.splice(index, 1);
return arr;
} else if ((arr.length = 1)) {
return [-1];
}
}