frontend/javaScript

[js / 알고리즘연습] 이어 붙인 수

김포레스트 2024. 9. 12. 13:08

 

문제설명

 

정수가 담긴 리스트 num_list가 주어집니다. num_list의 홀수만 순서대로 이어 붙인 수와 짝수만 순서대로 이어 붙인 수의 합을 return하도록 solution 함수를 완성해주세요.

 

 

 

나의 풀이

function solution(num_list) {
    let string1 = '';
    let string2 = '';

    num_list.forEach((el, idx) => {
        if(el % 2 == 0) {
            string1 += String(el);
        } else {
            string2 += String(el);
        }
    });


    return Number(string1) + Number(string2);
}

 

 

 

best 풀이

function solution(num_list) {
    const { odds, evens } = num_list.reduce(({ odds, evens }, num) => {
        if (num % 2 === 0) {
            evens.push(num)
        } else {
            odds.push(num)
        }
        return { odds, evens }
    }, { odds: [], evens: [] })
    return Number(odds.join('')) + Number(evens.join(''))
}