없는 숫자들의 합만 도출해내면 되기 때문에
(1)0~9까지의 값을 다 더한 후에
(2)제시된 배열의 숫자들을 다 더하고
(3)이 둘을 빼면 되겠다라는 생각을 하게 되었다.
function solution(numbers){
let zeroToNine = 0
let sumNumbers= 0
for (let i=0; i<10; i++){
zeroToNine += i
}
for (let j=0; j<numbers.length; j++){
sumNumbers += j
}
return zeroToNine - sumNumbers
}
1번을 완성하고 나서 splice로도 할 수 있을 거 같은데?? 라는 생각이 들어서 시도해보게 되었다.
splice는 평소에 잘 안썼던 함수라서 이전에 정리해놨던 것들을 다 참고해서 만들었다.
function solution(numbers){
let zeroToNine = [] // 0~9까지
let result = 0
for (let i=0; i<10; i++){
zeroToNine.push(i)
}
for (let j=0; j<numbers.length; j++){ // 0
if (zeroToNine.indexOf(numbers[j]) >= 0){ // zeroTonine.indexOf(1)
zeroToNine.splice(zeroToNine.indexOf(numbers[j]), 1)
}
}
for (let k=0; k<zeroToNine.length; k++){
result += zeroToNine[k]
}
return result
}