문제(출처: 프로그래머스)
정수 배열 array와 정수 n이 매개변수로 주어질 때, array에 들어있는 정수 중 n과 가장 가까운 수를 return 하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ array의 길이 ≤ 100
- 1 ≤ array의 원소 ≤ 100
- 1 ≤ n ≤ 100
- 가장 가까운 수가 여러 개일 경우 더 작은 수를 return 합니다.
▶ 내가 푼 방식
function solution(array, n) {
var difference = [];
array.sort()
array.map(value => difference.push(Math.abs(n-value)))
const min = Math.min(...difference)
return array[difference.indexOf(min)];
}
▶ 다른 유저가 푼 방식
// 유저 1
function solution(array, n) {
array.sort((a,b) => Math.abs(n - a) - Math.abs(n - b) || a - b);
return array[0];
}
▶ 배운 것들
- sort 를 새로운 방식으로 정렬
-
'프로그래밍 > 코딩연습' 카테고리의 다른 글
[ JS 코딩연습 ] 영어가 싫어요 (0) | 2024.05.12 |
---|---|
[JS 코딩연습] 369 게임 (0) | 2024.05.11 |
[ JS 코딩연습] 중복된 문자 제거 (0) | 2024.05.11 |
[ JS 코딩연습 ] 컨트롤 제트 (0) | 2024.05.09 |
[ JS 코딩연습 ] 소인수분해 (0) | 2024.05.09 |