문제
나의 생각
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;
}