[프로그래머스 코딩테스트] 최댓값과 최솟값

meroriiDev·2022년 10월 12일
0

코딩테스트

목록 보기
1/5

문제

문제 설명

문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요.
예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다.

제한 조건

s에는 둘 이상의 정수가 공백으로 구분되어 있습니다.

입출력 예

s	            return

"1 2 3 4"	    "1 4"
"-1 -2 -3 -4"	"-4 -1"
"-1 -1"     	"-1 -1"

풀이

function solution(s) {
    const str = s.split(' ');
    str.sort((a,b)=>a-b);
    const answer = [str[0], str[str.length-1]].join(' ');
    
    return answer;
}

설명/느낀점

처음엔 문자열로 들어있는 값을 비교하기 위해 str을 map을 돌려 Number처리를 진행했는데, 해당 단계 없이도 sort를 이용하니 값의 크기가 계산이 되었다.

다른 풀이를 보다보니 Math를 활용하는 답안도 많았다. 더 많은 메소드들을 알고 있어야 하는 이유!

function solution(s) {
    const arr = s.split(' ');

    return Math.min(...arr)+' '+Math.max(...arr);
}

0개의 댓글