개발새발 로그

[JS] 프로그래머스 : 최댓값과 최솟값 본문

알고리즘

[JS] 프로그래머스 : 최댓값과 최솟값

이즈흐 2023. 6. 10. 23:05

최댓값과 최솟값

문제 설명

문자열 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) {
    var answer = '';
    
    s=s.split(" ");
    answer= Math.min(...s)+" "+Math.max(...s);
    return answer;
}

2번째 제출

function solution(s) {
let max=Math.max(...s.split(" ").map(Number));
let min=Math.min(...s.split(" ").map(Number));
return min+" "+max;
}

참고

1.1 문자열의 문자들을 분리하여 배열로 변환 : Spread Operator

스프레드 연산자(Spread Operator)를 이용하여 문자열을 배열로 변환할 수 있습니다. 문자열을 구성하는 문자들이 분리되어 요소로 배열에 추가됩니다.

const str = 'hello';

const arr = [...str];

console.log(Array.isArray(arr));
console.log(arr);

Output:

true
[ 'h', 'e', 'l', 'l', 'o' ]

2. 구분자로 문자열을 분리하여 배열로 변환 : split()

split()을 이용하여 구분자로 문자열을 분리하고 분리된 문자열들을 배열에 저장할 수 있습니다. 아래 예제는 문자열을 공백으로 분리하고 분리된 문자들로 배열을 만듭니다.

const str = 'hello world javascript';

const arr = str.split(' ');

console.log(Array.isArray(arr));
console.log(arr);

Output:

true
[ 'hello', 'world', 'javascript' ]
728x90
반응형
LIST