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도 생성 안 하고 풀었다.
'Java' 카테고리의 다른 글
| [백준] 코딩테스트 문제 2745: 진법 변환 (0) | 2026.03.16 |
|---|---|
| [백준] 코딩테스트 문제 2566: 최댓값 (0) | 2026.03.04 |
| [백준] 코딩테스트 문제 2738: 행렬 덧셈 (0) | 2026.03.04 |
| [백준] 코딩테스트 문제 25206: 너의 평점은 (0) | 2026.03.03 |
| [백준] 코딩테스트 문제 1316: 그룹 단어 체커 (0) | 2026.03.02 |