๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ“ ์•Œ๊ณ ๋ฆฌ์ฆ˜/Programmers

[Javascript/PGS] Lv.2 : ์—ฐ์† ๋ถ€๋ถ„ ์ˆ˜์—ด ํ•ฉ์˜ ๊ฐœ์ˆ˜

by xxilliant 2025. 4. 14.
728x90
๋ฐ˜์‘ํ˜•

 

https://school.programmers.co.kr/learn/courses/30/lessons/131701

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

SW๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํ‰๊ฐ€, ๊ต์œก, ์ฑ„์šฉ๊นŒ์ง€ Total Solution์„ ์ œ๊ณตํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์„ฑ์žฅ์„ ์œ„ํ•œ ๋ฒ ์ด์Šค์บ ํ”„

programmers.co.kr


ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ ˆ๋ฒจ 2.

๋ˆ„์ ํ•ฉ, ํˆฌํฌ์ธํ„ฐ...?์™€ ์ค‘๋ณต์ œ๊ฑฐ Set์„ ์‚ฌ์šฉํ•˜๋ฉด ๊ฐ„๋‹จํ•จ

์ฃผ์˜ํ•  ์ ์€ ์›ํ˜• ์ˆ˜์—ด์ด๊ธฐ ๋•Œ๋ฌธ์—, ๋ฐฐ์—ด 2๊ฐœ๋ฅผ ๋ถ™์—ฌ๋†“๊ณ  ์จ์•ผ ํ•œ๋‹ค.

 

 

๋‚˜์˜ ํ’€์ด

function solution(elements) {
    var answer = 0;
    let aSet = new Set();
    let left = 0;
    let right = 0;
    let len = elements.length;
    for(let i=0; i<len; ++i){
        elements.push(elements[i]);
    }
    for(left = 0; left<len; ++left){
        let sum = elements[left];
        aSet.add(sum);
        for(right = left+1; right<left+len; ++right){
            sum += elements[right];
            aSet.add(sum);
        }
    }
    // console.log(aSet);
    answer = aSet.size;
    return answer;
}

728x90
๋ฐ˜์‘ํ˜•