[JavaScript][Programmers] 제일 작은 수 제거하기

조준형·2021년 9월 1일
0

Algorithm

목록 보기
105/142
post-thumbnail

🔎 제일 작은 수 제거하기

❓ 문제링크

https://programmers.co.kr/learn/courses/30/lessons/12935

📄 제출 코드

function solution(arr) {
  let min = Math.min(...arr);
  arr.forEach((el,i) => {
    el == min ? arr.splice(i, 1) : arr;
  })
  return arr.length !=0 ? arr : [-1];
}

처음에 단순히 가장 작은 수만 찾아서 제거했는데 채점하니 모두 오답이었다.
왜그런가 고민해보니 가장작은수가 1개만있다고는 안했기 때문에 배열전체를 돌면서 가장 작은수들을 제거해야한다.
그래서 forEach로 arr을 돌면서 min이면 해당위치를 splice로 자르고 다 돌고나서 길이가 0이면 -1을 리턴하고 아니면 남은 arr을 출력하여 답을 구했다.

profile
깃허브 : github.com/JuneHyung

0개의 댓글