Beginner
2024-04-08

없는 숫자 더하기

numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 반환하는 함수 구현하기

#99일지#99클럽#TIL#개발자스터디#코딩테스트#항해
직접 풀러가기

문제 설명

0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요.

제한 사항

  • 1 ≤ numbers의 길이 ≤ 9
  • 0 ≤ numbers의 모든 원소 ≤ 9
  • numbers의 모든 원소는 서로 다릅니다.
numbersresult
[1,2,3,4,6,7,8,0]14
[5,8,4,0,6,7,9]6

풀이

0부터 9까지의 숫자 중 배열에 없는 숫자의 합이므로, 0부터 9까지의 합인 45에서, 배열의 합을 빼는 방식으로 구현했다.

JavaScript

function solution(numbers) {
    var answer = -1;
    let sum = 0;
    let max = 45;
    numbers.forEach(num => sum += num );
    answer = max - sum;    
    return answer;
}
//reduce() 사용
function solution(numbers) {
    var answer = -1;
    let sum = 0;
    let max = 45;
    sum = numbers.reduce((acc, cur)=>{
        return acc + cur
    },0);
    answer = max - sum;    
    return answer;
}

Python

Python의 경우, 배열 안의 원소들의 합이 sum()함수로 구할 수 있으므로, 더 간단히 구현할 수 있었다.

def solution(numbers):
    answer = 45 - sum(numbers)
    return answer