ν”„μ—” 곡뢀/🫧 μ•Œκ³ λ¦¬μ¦˜ 곡뢀

[μ•Œκ³ λ¦¬μ¦˜ || ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] ν‘Έλ“œ 파이트 λŒ€νšŒ

λ˜μžπŸ‹ 2023. 6. 6. 09:34
728x90

 

function solution(food) {
    let oneCount = [];
    food.map((v, i) => i > 0 && oneCount.push(Math.floor(v / 2)))
    const arr = oneCount.map((v, i) => new Array(v).fill(i + 1)).flat();
    const rev = [...arr].reverse().join("");

    console.log(arr.join("") + "0" + rev)
}

μ²˜μŒμ— ν‘Ό 방법. 

근데 μ—¬κΈ°μ„œ λ­”κ°€ 더 쀄일 수 μžˆμ„ 것 κ°™μ•˜λ‹€.

 

function solution(food) {
    const arr = food.map((v, i) => {
        return new Array(Math.floor(v / 2)).fill(i);
    }).flat();
    return arr.join("") + "0" + arr.reverse().join("");
}

 

μ΄λ ‡κ²Œ μ€„μ˜€λŠ”λ°, 

 

데헷 생각 λͺ»ν–ˆμŒ

function solution(food) {
    const arr = food.flatMap((v, i) => {
        return new Array(Math.floor(v / 2)).fill(i);
    })
   return arr.join("") + "0" + arr.reverse().join("");
}

 

 

우리 μŠ€ν„°λ”” νŒ€μ› λΆ„μ˜ 풀이도 쒋은 것 κ°™λ‹€.

function solution(food) {
    let word = "";
    for(let i =1 ; i < food.length; i++){
        word += `${i}`.repeat(Math.floor(food[i]/2));
    }
    return `${word}0${word.split('').reverse().join('')}`
}

string 을 repeat ν•˜λ©΄ λ˜λŠ”κ΅¬λ‚˜..!

쒋은 λ©”μ„œλ“œκ°€ μžˆμ—ˆκ΅¬λ§Œ~~

 

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/repeat

 

String.prototype.repeat() - JavaScript | MDN

repeat() λ©”μ„œλ“œλŠ” λ¬Έμžμ—΄μ„ μ£Όμ–΄μ§„ 횟수만큼 λ°˜λ³΅ν•΄ 뢙인 μƒˆλ‘œμš΄ λ¬Έμžμ—΄μ„ λ°˜ν™˜ν•©λ‹ˆλ‹€.

developer.mozilla.org

 

728x90
λ°˜μ‘ν˜•