⌨️ 프로그래머스/코딩테스트 입문

[프로그래머스] 가까운 수 | JS

하나둘세현 2024. 8. 15. 00:28
728x90

문제

정수 배열 array와 정수 n이 매개변수로 주어질 때, array에 들어있는 정수 중 n과 가장 가까운 수를 return 하도록 solution 함수를 완성해주세요.

해결 과정

function solution(array, n) {
  var answer = 0;
  let minNum = 999;
  let arrayAgain = array.sort();
  for (let i = 0; i < array.length; i++) {
    let num = array[i];
    if (minNum > Math.abs(n - num)) {
      minNum = Math.abs(n - num);
      answer = num;
    }
  }
  return answer;
}

 

가까운 수를 구하는 문제다. 이리저리 문제를 풀 방법을 생각해 봤지만 도무지 아이디어가 안떠올라 라미개발자 영상을 보고 방법을 찾았다.

그런데 문제가 minNum을 왜 999로 설정하는지.. 수를 비교하기 위해서라는 건 알지만 이해가 도무지되지 않았다. 천천히 하루정도 생각을 해본뒤 디버깅을 해가며 코드를 이해했다. 

Math.abs()를 이용해 문제를 풀 수 있었다..

새롭게 알게된 점

Math.abs()는 절대값을 구하기 위한 함수이다. 

 

 

 

728x90