문제 설명

정수 배열 arr가 주어집니다. 이 중 0에서 가장 가까운 값을 구하는 프로그램을 구현하세요.


입력 형식

  • arr: 주어진 정수 배열

출력 형식

  • 조건에 맞는 값을 정수로 반환

제약 사항

  • 0 < arr.length <= 100
  • 0 <= arr[i] <= 100

입출력 예시

  • 입력
    • arr = {5, 2, 1, 3}
  • 출력: 1
  • 설명: 0에 가장 가까운 수 1이 답안이다.

작성 코드

class test125 {
    public int solution(int[] arr) {

        int max = arr[0];
        int min = arr[0];

        for (int i = 0; i < arr.length; i++) {
            if (max < arr[i]) {
                max = arr[i];
            }
            if (min > arr[i]) {
                min = arr[i];
            }
        }
        return min;
    }

    public static void main(String[] args) {
        test125 st = new test125();
        int[] arr = {5, 2, 1, 3};
        System.out.println(st.solution(arr));
    }
}

가장 작은 값을 반환하는 코드로 작성하였음.

 

다른 분들 코드를 보고 sort 함수를 쓰면 훨씬 간단하다는 것을 확인..

import java.util.*;

class Main {
    public int solution(int[] arr) {
        int answer;
        Arrays.sort(arr);
        answer = arr[0];
        return answer;
    }

    public static void main(String[] args) {
        Main st = new Main();
        int[] arr = {5, 2, 6, 3};
        System.out.println(st.solution(arr));
    }
}