본문 바로가기

코딩테스트/programmers

최댓값과 최솟값

https://school.programmers.co.kr/learn/courses/30/lessons/12939

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문자열을 공백으로 구분하여 숫자로 변환하고,

 

오름차순 또는 내림차순 정렬하여 최솟값, 최대값을 구하는 문제.

 

제한 조건이 두개 이상의 정수 이므로 예외 케이스(빈 문자열 또는 정수 1개)에 대한 처리도 필요없다.

 

import java.util.stream.*;
import java.util.*;

class Solution {
    public String solution(String s) {
    
        List<Integer> nums = Arrays.stream(s.split(" ")) // 문자열을 공백으로 자르기
        	.map(Integer::parseInt)	// 문자 -> 숫자로 변환
            .sorted() // 오름차순 정렬
            .collect(Collectors.toList());
        
        // 두개 이상의 숫자들이 오름차순 정렬되었기 때문에
        // 리스트의 첫번째 값이 최솟값, 마지막 값이 최대값이 됨
        return nums.get(0).toString() + " " + nums.get(nums.size() - 1).toString();
        
    }
    
}

 

 

'코딩테스트 > programmers' 카테고리의 다른 글

숫자의 표현  (0) 2023.09.11
이진 변환 반복하기  (0) 2023.09.11
올바른 괄호  (0) 2023.09.11
최솟값 만들기  (0) 2023.09.07
JadenCase 문자열 만들기  (0) 2023.09.07