코딩 테스트
[ 프로그래머스 ] 제일 작은 수 제거하기
주연배
2024. 5. 20. 21:45
문제
풀이
1. splice()를 이용하여 제일 작은 수를 찾아 제거를 해준다
이때 splice()안에 제일 작은 수의 인덱스 하나를 제거하기 위해 indexOf()와 Math.min()을 사용한다.
2. 그 후 arr의 길이가 0이면(빈 배열) [-1]을 리턴하고 그렇지 않으면 arr을 리턴해준다.
결과
function solution(arr) { var answer = arr.splice(arr.indexOf(Math.min(...arr)),1); return arr.length === 0 ? [-1] : arr; }
처음에 Math.min(arr)이라고 코드를 친 후 실행을 시켜봤더니 실행이 되지 않았다.
그 다음 Math.min(...arr)로 코드를 수정했더니 실행 성공이 떴다.
...이 Math.min()에서 어떤 역할을 하는지 찾아보았더니 ...은 Math.min()에서 여러 개의 인자를 받을 수 있기 때문이다.
따라서 이 점을 유의해서 문제를 풀어나가야겠다.