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

์นดํ…Œ๊ณ ๋ฆฌ ์—†์Œ

[Code Kata] ์—†๋Š” ์ˆซ์ž ๋”ํ•˜๊ธฐ - JavaScript

 

๐Ÿ“† 2024๋…„ 5์›” 28์ผ

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ์นดํƒ€ 28๋ฒˆ๋ฌธ์ œ - ์—†๋Š” ์ˆซ์ž ๋”ํ•˜๊ธฐ

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

 

 

 

 

 

โœ… ๋ฌธ์ œ์„ค๋ช…

0๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ์ˆซ์ž ์ค‘ ์ผ๋ถ€๊ฐ€ ๋“ค์–ด์žˆ๋Š” ์ •์ˆ˜ ๋ฐฐ์—ด numbers๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. numbers์—์„œ ์ฐพ์„ ์ˆ˜ ์—†๋Š” 0๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ์ˆซ์ž๋ฅผ ๋ชจ๋‘ ์ฐพ์•„ ๋”ํ•œ ์ˆ˜๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.

 

  • ์ œํ•œ์‚ฌํ•ญ

1 ≤ numbers์˜ ๊ธธ์ด ≤ 9

0 ≤ numbers์˜ ๋ชจ๋“  ์›์†Œ ≤ 9

numbers์˜ ๋ชจ๋“  ์›์†Œ๋Š” ์„œ๋กœ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

 

  • ์ž…์ถœ๋ ฅ ์˜ˆ 1

5, 9๊ฐ€ numbers์— ์—†์œผ๋ฏ€๋กœ, 5 + 9 = 14๋ฅผ return ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • ์ž…์ถœ๋ ฅ ์˜ˆ 2

1, 2, 3์ด numbers์— ์—†์œผ๋ฏ€๋กœ, 1 + 2 + 3 = 6์„ return ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

 

โœ ๋ฌธ์ œํ’€์ด

function solution(num) {
  let answer = 0;
  for (let i = 0; i <= 9; i++) {
    if (!num.includes(i)) {
      answer += i;
    }
  }
  return answer;
}

console.log(solution([1, 2, 3, 4, 6, 7, 8, 0]));
 

ํ•ด์„ค / ์žก์„ค

for๋ฌธ์„ ํ†ตํ•ด ์ œํ•œ์กฐ๊ฑด์ธ 0๋ถ€ํ„ฐ 9๊นŒ์ง€ ๋ฐ˜๋ณต

if๋ฌธ์„ ํ†ตํ•ด num ๋ฐฐ์—ด์— i๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฉด ์•„๋ž˜์˜ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰

answr์— ํ˜„์žฌ๊ฐ’์„ ๋”ํ•จ

 

 

โœ”๏ธ ์ฐธ๊ณ ํ•  ์ข‹์€ ์ฝ”๋“œ

function solution(numbers) {
    return 45 - numbers.reduce((cur, acc) => cur + acc, 0);
}
 
 

ํ•ด์„ค / ์žก์„ค

๋ฐฐ์—ด numbers์˜ ๋ชจ๋“  ์š”์†Œ๋ฅผ ๋”ํ•˜๋Š” ์ž‘์—…์„ ์ˆ˜ํ–‰

reduce ํ•จ์ˆ˜๋Š” ๋ˆ„์ ๊ฐ’(acc)๊ณผ ํ˜„์žฌ ์š”์†Œ(cur)๋ฅผ ๋”ํ•ด๊ฐ€๋ฉด์„œ ๋ฐฐ์—ด์„ ์ˆœํšŒํ•œ๋‹ค.

์ด๋ ‡๊ฒŒ ๊ณ„์‚ฐ๋œ ํ•ฉ๊ณ„๋ฅผ 45์—์„œ ๋นผ๋ฉด ๋น ์ง„ ์ˆซ์ž์˜ ํ•ฉ์ด ๋‚˜์˜ด

์™œ๋ƒํ•˜๋ฉด 0๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ์ˆซ์ž์˜ ํ•ฉ์€ 45์ด๊ธฐ ๋•Œ๋ฌธ

 

 

๐Ÿ“ TIL

๋‹ค๋“ค ์ฒœ์žฐ๊ฐ€? ๋ฌธ์ œ ํ•ด์„์—๋งŒ 10๋ถ„ ๊ฑธ๋ฆฌ๋„ค ใ…‹ใ…‹ ใ……ใ…‚