본문 바로가기
Java

[프로그래머스][Lv.2] 최댓값과 최솟값

by 리슈다 2026. 3. 5.

https://school.programmers.co.kr/learn/courses/30/lessons/12939?language=java

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

import java.util.*;

class Solution {
    public String solution(String s) {
        ArrayList<Integer> intAry = new ArrayList<>();
        String[] array = s.split(" ");
        for(String str : array){
            intAry.add(Integer.parseInt(str));
        }
        int max = Collections.max(intAry);
        int min = Collections.min(intAry);
        String answer = min + " " + max;
        return answer;
    }
}

백준에서 계속 알아서 공백 기준(사실 기본값이 공백)으로 나눠주는 StringTokenizer 쓰다가

split() 사용하려니 막막해서 split 사용법 검색해서 사용했다.

이후 공백 기준으로 나눈 뒤 값들을 array 배열에 넣고, 배열 내 값들을 ArrayList 사용해서 정수형 배열 intAry에 넣어줬다.

ArrayList 내에 최댓값, 최솟값 찾아주는 메소드를 분명 봤던 기억이 있어서 검색해보니

Collections.max() / Collections.min() 메소드가 있었고 이를 사용했다.

 

 

class Solution {
    public String solution(String s) {

        String[] arr = s.split(" ");

        int min = Integer.MAX_VALUE;
        int max = Integer.MIN_VALUE;

        for(String str : arr){
            int num = Integer.parseInt(str);

            min = Math.min(min, num);
            max = Math.max(max, num);
        }

        return min + " " + max;
    }
}

지피티는 Collections 사용 없이, ArrayList도 생성 안 하고 풀었다.