가까운 수

문제

 


나의 생각

 

n 갑을 배열로 받은 값마다 뺄셈을 해주고 그 값을 비교하여 제일 작은 값을 가진 index를 결과로 배출.

같은 값을 가지고 있는 것 중에는 더작은 값을 결과로 나오게 함.

 


나의 답안

 

public static int solution(int[] array, int n) {
    int answer = 0;
    int before = Integer.MAX_VALUE;

    for (int i = 0; i < array.length; i++) {
        int abs = Math.abs(array[i] - n);
        if (abs < before) {
            before = abs;
            answer = array[i];

        } else if(abs == before) {
            answer = array[i] < answer ? array[i] : answer;
        }
    }

    return answer;
}

'Programmers 문제풀이 > Lv.0' 카테고리의 다른 글

진료순서 정하기  (0) 2023.03.01
k의 개수  (0) 2023.03.01
2차원으로 만들기  (0) 2023.03.01
팩토리얼  (3) 2023.02.28
A로 B 만들기  (0) 2023.02.28