๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Coding Test

[์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ] : ์ง์ˆ˜์˜ ํ•ฉ

by ๊ถŒ์Šพํ–„ 2023. 8. 1.

๋ฌธ์ œ

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ง์ˆ˜์˜ ํ•ฉ

 

๊ณ ๋ฏผํ•œ ๋ถ€๋ถ„

n์˜ ๋ฒ”์œ„๊ฐ’์ด 0๋ถ€ํ„ฐ 1000์ด๋‹ˆ.... ๊ทธ ์•ˆ์˜ ์ •์ˆ˜๊ฐ€ ๋“ค์–ด์™”์„ ๋•Œ ๋‚˜๋Š” ํ•ด๋‹น ์ •์ˆ˜๋ณด๋‹ค ์ง์€ ๋ชจ๋“  ์ง์ˆ˜์˜ ๊ฐ’์„ ๋”ํ•ด์•ผ ํ•˜๋‹ˆ๊นŒ,

์ผ๋‹จ ์˜ˆ์‹œ๋กœ 6์ด ๋“ค์–ด์™”์„๋•Œ console.log ๋กœ ๊ฐ์ด๋ผ๋„ ์žก์•„๋ด์•ผ ๊ฒ ๋‹ค !!

function solution(n) {
    // main logic
}
console.log(solution(6));

6์ด ๋“ค์–ด์˜จ๋‹ค ๊ฐ€์ •ํ•˜๋ฉด 2 / 4 / 6์„ ๋”ํ•ด์•ผ ํ•˜๋Š”๊ฑฐ๋‹ˆ๊นŒ... ๋“ค์–ด์˜จ ์ •์ˆ˜๋ณด๋‹ค ์ž‘์€ ๊ฐ’์„ ๊ฐ€์ง€๊ฒŒ๋” ํ•ด์„œ for๋ฌธ์„ ๋Œ๋ฆฌ๋ฉด ๋ญ”๊ฐ€ ๋  ๊ฒƒ ๊ฐ™์€๋ฐ??

๊ทผ๋ฐ for๋ฌธ์—์„œ ์ดˆ๊ธฐ๊ฐ’์ด๋ž‘ ์กฐ๊ฑด์€ ๋”ฑ ์•Œ๋งž๋Š”๊ฒƒ ๊ฐ™์€๋ฐ ์ฆ๊ฐ์ด 2๊ฐœ์”ฉ๋„ ๊ฐ€๋Šฅํ•œ๊ฐ€? ์‹ถ์–ด์„œ ๊ตฌ๊ธ€๋ง !!

 

์•Œ๊ฒŒ๋œ ์ 

์ฆ๊ฐ์ด 2์”ฉ ๋ฟ๋งŒ ์•„๋‹Œ ๋‚ด๊ฐ€ ์ง€์ •ํ•œ ์ฆ๊ฐ ์ˆ˜๋งŒํผ ์ฆ๊ฐ€๊ฐ€ ๊ฐ€๋Šฅํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ๋˜์—ˆ๊ณ ,

++ ์—ฐ์‚ฐ์ž ์ž์ฒด๊ฐ€ +=1์˜ ์ถ•์•ฝ๋ฒ„์ „์ด๋ผ๋Š” ๊ฒƒ๋„ ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‹ค๋ฅธ ์ˆซ์ž๋ฅผ ๋„ฃ์–ด ์‘์šฉ์ด ๊ฐ€๋Šฅํ•œ ์ ์„ ๋ฐฐ์šฐ๊ฒŒ๋˜์—ˆ๋‹ค !!

์ฆ๊ฐ์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๋ง์— ๋ฐ”๋กœ vscode ํ‚ค๊ณ  for๋ฌธ ๋งŒ๋“ค์–ด์„œ ์ƒ๊ฐํ•œ ๋กœ์ง ์ž‘์„ฑํ•˜๊ธฐ !!

 

์ œ์ถœ ์ฝ”๋“œ

function solution(n) {
    var answer = 0;
    for (i = 2; i <= n; i += 2) {
        answer += i;
    }
    return answer;
}
console.log(solution(6)); // 12

์ฝ”๋“œ๋ฅผ ์ œ์ถœํ•˜๋ฉด ๊นƒํ—™ ๋ ˆํผ์ง€ํ† ๋ฆฌ์— ์ž๋™ ์ปค๋ฐ‹์ด ๋˜๊ณ , ํ•ญ์ƒ ๋‹ค๋ฅธ์‚ฌ๋žŒ๋“ค์˜ ์ œ์ถœ ์ฝ”๋“œ์™€ ๋‚ด๊ฑฐ๋ฅผ ๋น„๊ตํ•ด๋ณด๊ณค ํ•œ๋‹ค.

 

๋‹ค๋ฅธ ๋ถ„๋“ค์˜ ์ฝ”๋“œ

JS Math ๊ฐ์ฒด. ํ•จ์ˆ˜ ์•„๋‹˜.

Math ๊ฐ์ฒด๋Š” ์ฝ”๋”ฉํ…Œ์ŠคํŠธ์—์„œ ์ž์ฃผ ๋งˆ์ฃผ์น˜๊ฒŒ ๋œ๋‹ค. Math ๊ฐ์ฒด์•ˆ์˜ floor๋ผ๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋“ค์–ด์˜จ ์ •์ˆ˜ n์„ 2๋กœ ๋‚˜๋ˆˆ๊ฐ’์˜ ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์„๋•Œ์˜ ๊ฐ€์žฅ ํฐ ์ •์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ด์„œ half๋ผ๋Š” ์‹๋ณ„์ž์— ํ• ๋‹นํ–ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ํ• ๋‹นํ•œ ๋ณ€์ˆ˜์ธ half์˜ ๊ฐ’๊ณผ, half์— 1์„ ๋”ํ•œ๊ฐ’์„ ๊ณฑํ•ด์„œ return... ์ด๊ฑด ์ˆ˜ํ•™์ ์œผ๋กœ๋„ ๊ณต์‹์˜ ์˜๋ฏธ๋ฅผ ์•Œ์•„์•ผ ๊ฐ€๋Šฅํ–ˆ๋˜ ์ ‘๊ทผ์ด ์•„๋‹Œ๊ฐ€ ์‹ถ๋‹ค. ๋‚˜์ค‘์— ์ง์ˆ˜์˜ ํ•ฉ์„ ๊ตฌํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ํ•„์š”๋กœ ํ•  ๋•Œ ์ด๋ฒˆ ์ฝ”๋“œ๋ฅผ ๋– ์˜ฌ๋ฆฌ๋ฉด ๊ดœ์ฐฎ์€ ์˜๊ฐ์ด ๋˜์ง€ ์•Š์„๊นŒ ์‹ถ๋‹ค.

function solution(n) {
    var half = Math.floor(n/2);
    return half*(half+1);
}

 

#์ฝ”๋”ฉํ…Œ์ŠคํŠธ #์ฝ”ํ…Œ #Math #์ง์ˆ˜์˜_ํ•ฉ #for๋ฌธ #์ดˆ๊ธฐ๊ฐ’ #์กฐ๊ฑด #์ฆ๊ฐ #์ฆ๊ฐ๋„_๋‚ด_๋ง˜๋Œ€๋กœ