๐Ÿ˜บํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - LV.2 ๊ทค ๊ณ ๋ฅด๊ธฐ [JS]

laonยท2024๋…„ 6์›” 22์ผ
post-thumbnail

๋ฌธ์ œ ์„ค๋ช…

k = ๊ฒฝํ™”๊ฐ€ ๊ณ ๋ฅธ ๊ทค
tangerine[] = ์ˆ˜ํ™•ํ•œ ๊ทค์˜ ํฌ๊ธฐ๋ฅผ ๋‹ด์€ ๋ฐฐ์—ด

๊ฒฝํ™”๋Š” ์ตœ๊ณ ์˜ ํšจ์œจ์„ฑ์„ ์ข‹์•„ํ•œ๋‹ค. ํฌ๊ธฐ๊ฐ€ ํฌ๋“  ์ž‘๋“  ์ƒ๊ด€์—†์ด ์ตœ์†Œํ•œ์˜ ์ข…๋ฅ˜์˜ ๊ทค์„ ๊ณ ๋ฅด๊ณ  ์‹ถ์–ด ํ•œ๋‹ค. ์ด๋ฒˆ์—๋„ ์ด์ƒํ•œ ์‚ฌ๋žŒ์ด๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ๊ฒฝํ™”๊ฐ€ ์ˆ˜ํ™•ํ•œ ๊ทค 8๊ฐœ์˜ ํฌ๊ธฐ๊ฐ€ [1, 1, 2, 2, 2, 3, 4, 5] ์žˆ๊ณ  3๊ฐœ๋ฅผ ๊ณ ๋ฅธ๋‹ค๋ฉด 2 ํฌ๊ธฐ์˜ ๊ทค์ด 3๊ฐœ ์žˆ์œผ๋ฏ€๋กœ ์„œ๋กœ ๋‹ค๋ฅธ ์ข…๋ฅ˜์˜ ์ˆ˜ 1์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

ํ’€์ด

๋ฌธ์ œ๋ฅผ ๋ณด์ž๋งˆ์ž map ์ž๋ฃŒ๊ตฌ์กฐ๊ฐ€ ์ƒ๊ฐ๋‚ฌ๋‹ค. map์„ ์ด์šฉํ•˜์—ฌ ์ข…๋ฅ˜๋ณ„๋กœ ๊ฐฏ์ˆ˜๋ฅผ ์ฒดํฌํ•˜๊ณ  ์ •๋ ฌํ•˜์—ฌ ๊ฐ’์„ ๊ตฌํ•˜๋ฉด ๋œ๋‹ค.

์ฒซ ํ’€์ด

function solution(k, tangerine) {
    var answer = 0;
    const map = new Map();
    for(let i = 0;i < tangerine.length;i++){
        if(map.has(tangerine[i])){
            map.set(tangerine[i], map.get(tangerine[i]) + 1);
        } else {
            map.set(tangerine[i], 1);
        }
    }
    const mapToArr = Array.from(map).sort((a, b) => b[1] - a[1]);
    for(let i = 0;i < mapToArr.length;i++){
        k -= mapToArr[i][1];
        answer++;
        if(k <= 0){
            break;
        }
    }
    return answer;
}

๋ฆฌํŒฉํ† ๋ง

function solution(k, tangerine) {
    let answer = 0;
    const map = new Map();

    tangerine.forEach(t => {
        map.set(t, (map.get(t) || 0) + 1);
    });

    const sortedMapToArray = Array.from(map).sort((a, b) => b[1] - a[1]);

    for (let i = 0; i < sortedArray.length; i++) {
        k -= sortedArray[i][1];
        answer++;
        if (k <= 0) {
            break;
        }
    }

    return answer;
}

๋А๋‚€์ ๐Ÿ˜บ

์ผ๋‹จ ๊ฒฝํ™”๋Š” ๊ฐœ๋ฐœ์ž๋ฅผ ์ž๊ทนํ•˜๋Š” ํž˜์ด ์žˆ๋‹ค. ๋•๋ถ„์— ๋ฌธ์ œ๋ฅผ ์ž˜ ํ’€์—ˆ๋‹ค. ๋ ˆ๋ฒจ 2 ์ด์ƒ์˜ ๋ฌธ์ œ๋ฅผ ํ’€๋ฉด์„œ ์ž๋ฃŒ๊ตฌ์กฐ์— ๋Œ€ํ•ด ๋” ๊นŠ์ด ๊ณต๋ถ€ํ•ด์•ผ๊ฒ ๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ๋‹ค. ์ด๋ก ์ ์œผ๋กœ ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฒƒ๋„ ์ค‘์š”ํ•˜์ง€๋งŒ, ์‹ค์ œ ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ณด๋ฉด์„œ ์ง์ ‘ ์ ์šฉํ•ด๋ณด๋Š” ๊ฒƒ์ด ํ›จ์”ฌ ๋” ํฐ ๋„์›€์ด ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.

profile
laonlaon

0๊ฐœ์˜ ๋Œ“๊ธ€