[프로그래머스] 제일 작은 수 제거하기

feelslikemmmm·2020년 11월 29일
0

Codingtest

목록 보기
6/7
post-thumbnail

Problem

정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수,

solution을 완성해주세요.

단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요.

예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다.

제한 사항

  • arr은 길이 1 이상인 배열입니다.

  • 인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다.

입출력 예시

해결 방법

min변수에 Math.min.aplly를 통해서 입력받은 arr에서 가장 작은 수를 추출해두고

result변수를 선언하고 filter 함수를 써서 arr의 요소 중 앞서 만들어 둔 min보다 큰것만 추출해주었다

그리고 arr.length가 1과 같거나 작은 경우에는 [-1]을 리턴해주고 아닐 경우에만 result를 리턴해주었다

코드 구현

실행 결과

다른 사람의 풀이

splice함수로 변경점을 Math함수를 써서 가장 작은수로 잡아주고, 그것만 제거하여 새 배열을 반환하셨다

그리고 조건문을 통해 1보다 작으면 [-1]을 리턴하고 아닐 경우에는 arr를 리턴하셨다

이 문제 같은 경우는 내 방법이 조금 더 깔끔한 것 같다

문제를 다 풀고 다른 분들의 풀이를 보면 다양한 방법들이 있고, 또 그 분들이 사용한 메서드를 보면서

한번 더 공부가 되는 것 같다

profile
꾸준함을 잃지 말자는 모토를 가지고 개발하고 있습니다 :)

0개의 댓글