728x90
문제
정수 배열 array와 정수 n이 매개변수로 주어질 때, array에 들어있는 정수 중 n과 가장 가까운 수를 return 하도록 solution 함수를 완성해주세요.
array | n | result |
[3, 10, 28] | 20 | 28 |
[10, 11, 12] | 13 | 12 |
풀이
function solution(array, n) {
var answer = 0;
var array2 = [];
// 처음에 정렬해주기
array = array.sort()
for(let i=0; i<array.length; i++){
// array - n 을 배열로 담고
array2[i] = Math.abs(Math.abs(array[i]) - n)
}
// 최소값을 구한다.
MinNum = Math.min(...array2)
// 최소값 index를 찾고
index = array2.indexOf(MinNum)
// 기존 array에 구한 index를 넣는다
answer = array[index]
return answer;
}
728x90
'공부 > 알고리즘' 카테고리의 다른 글
치킨 쿠폰 javascript (0) | 2023.03.08 |
---|---|
이진수 더하기 javascript (0) | 2023.03.08 |
삼각형의 완성조건 javascript (0) | 2023.03.04 |
중복된 문자 제거 javascript (0) | 2023.03.04 |
k의 개수 javascript (0) | 2023.03.04 |