0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요.
1 ≤ numbers의 길이 ≤ 9
0 ≤ numbers의 모든 원소 ≤ 9
numbers의 모든 원소는 서로 다릅니다.
for문을 사용하여 포함하는 수 찾기
includes()
문법으로 numbers에 포함된 숫자인지 아닌지를 찾을 수 있다.
!를 붙여 포함되지 않은 수 찾기
includes는 true, false를 반환하는데, 앞에 !를 붙여 반대 상황을 찾을 수 있다.
!true = false !false = true `` <br>
answer에 더하기
answer의 초기값을 0으로 둔 후 위에서 찾은 값들을 더한다.
이번 문제는 for문을 사용하여 쉽게 풀 수 있었다.
다른 사람의 문제 풀이를 보는 것은 재밌다. 정말 다양한 생각이 존재하고, 나는 왜 저런 생각을 못했을까 싶다. 포함하지 않은 수를 하나하나 찾기보다 0부터 9까지 더한 전체 합에서 numbers의 배열의 합을 빼서 푸는 것이다.
arr.reduce((acc, cur) => acc + cur [, initialValue])
- accumulator : 누적값
- currentValue : 현재값
- initialValue : 초기값
var total = [0, 1, 2, 3].reduce( (accumulator, currentValue) => accumulator + currentValue, 0 ); // 반환값 6