๊ด€๋ฆฌ ๋ฉ”๋‰ด

Daehyunii's Dev-blog

ํ™€์ˆ˜(๊ธฐ๋ณธ ๋ฌธ์ œ ํ’€์ด) ๋ณธ๋ฌธ

๐Ÿ“š Language & CS knowledge/Algorithm (๊ธฐ์ดˆ๋ฌธ์ œํ’€์ด)

ํ™€์ˆ˜(๊ธฐ๋ณธ ๋ฌธ์ œ ํ’€์ด)

Daehyunii 2022. 8. 28. 21:51

๋ฌธ์ œ(์ถœ์ฒ˜ : ์ธํ”„๋Ÿฐ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด ๊ฐ•์˜, ์ •๋ณด์˜ฌ๋ฆผํ”ผ์•„๋“œ)

 

7๊ฐœ์˜ ์ž์—ฐ์ˆ˜๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ์ด๋“ค ์ค‘ ํ™€์ˆ˜์ธ ์ž์—ฐ์ˆ˜๋“ค์„ ๋ชจ๋‘ ๊ณจ๋ผ ๊ทธ ํ•ฉ์„ ๊ตฌํ•˜๊ณ , ๊ณ ๋ฅธ ํ™€์ˆ˜๋“ค ์ค‘ ์ตœ์†Œ๊ฐ’์„ ์ฐพ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”.

์˜ˆ๋ฅผ ๋“ค์–ด, 7๊ฐœ์˜ ์ž์—ฐ์ˆ˜ 12, 77, 38, 41, 53, 92, 85๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ์ด๋“ค ์ค‘ ํ™€์ˆ˜๋Š” 77, 41, 53, 85์ด๋ฏ€๋กœ ๊ทธ ํ•ฉ์€

77 + 41 + 53 + 85 = 256 ์ด ๋˜๊ณ ,

41 < 53 < 77 < 85 ์ด๋ฏ€๋กœ ํ™€์ˆ˜๋“ค ์ค‘ ์ตœ์†Œ๊ฐ’์€ 41์ด ๋œ๋‹ค.

โ–ฃ ์ž…๋ ฅ์„ค๋ช…
์ฒซ ๋ฒˆ์งธ ์ค„์— ์ž์—ฐ์ˆ˜ 7๊ฐœ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ฃผ์–ด์ง€๋Š” ์ž์—ฐ์ˆ˜๋Š” 100๋ณด๋‹ค ์ž‘๋‹ค. ํ™€์ˆ˜๊ฐ€ ํ•œ ๊ฐœ ์ด์ƒ ๋ฐ˜๋“œ์‹œ ์กด์žฌํ•œ๋‹ค.

โ–ฃ ์ถœ๋ ฅ์„ค๋ช…
์ฒซ์งธ ์ค„์— ํ™€์ˆ˜๋“ค์˜ ํ•ฉ์„ ์ถœ๋ ฅํ•˜๊ณ , ๋‘˜์งธ ์ค„์— ํ™€์ˆ˜๋“ค ์ค‘ ์ตœ์†Œ๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค.

โ–ฃ ์ž…๋ ฅ์˜ˆ์ œ 1
12 77 38 41 53 92 85

โ–ฃ ์ถœ๋ ฅ์˜ˆ์ œ 1 256
41

 

Tip

1) ์ตœ์†Ÿ๊ฐ’์„ ์ €์žฅํ•ด ๋†“์„ ์ˆ˜ ์žˆ๋Š” ๋ณ€์ˆ˜๋ฅผ ํ•˜๋‚˜ ๋งŒ๋“ค๊ณ  ์ž‘์€ ๊ฐ’์„ ํ• ๋‹นํ•œ๋‹ค.(Number.MIN_SAFE_INTEGER์„ ๋ณดํ†ต ํ™œ์šฉํ•จ)

2) ํ™€์ˆ˜ ๋“ค์˜ ํ•ฉ์„ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ณ€์ˆ˜๋ฅผ ๋งŒ๋“ค์–ด 0์„ ํ• ๋‹นํ•œ๋‹ค.

3) ๋ฐ˜๋ณต๋ฌธ์„ ๋Œ๋ฉด์„œ ํ™€์ˆ˜ ๊ฐ’๋“ค์€ ํ™€์ˆ˜๋ฅผ ๋“ค์˜ ํ•ฉ์„ ์ €์žฅํ•˜๋Š” ๋ณ€์ˆ˜์— ๋ฐ”๋กœ ๋”ํ•œ๋‹ค.

4) ๋ฐ˜๋ณต๋ฌธ์„ ๋Œ๋ฉด์„œ ์ตœ์†Ÿ๊ฐ’์„ ๊ณ„์† ๊ฐฑ์‹ ํ•ด ์ค€๋‹ค. 

 

๋ฌธ์ œ ํ’€์ด

function solution(arr){
    let answer = [];
    let min = Number.MAX_SAFE_INTEGER;
    let sum = 0;
    for(let x in arr){
        if(x % 2 === 1){
            sum += x;
            if(x < min) min = x;
        }
    }
    answer.push(sum);
    answer.push(min);   
    return answer;
}

arr=[12, 77, 38, 41, 53, 92, 85];
console.log(solution(arr));