[프로그래머스] 없는 숫자 더하기

최연서·2022년 1월 16일
0

알고리즘

목록 보기
6/30
post-thumbnail

오늘의 문제

📌 없는 숫자 더하기

문제 설명

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


제한 조건

  • 1 ≤ numbers의 길이 ≤ 9
  • 0 ≤ numbers의 모든 수 ≤ 9
  • numbers의 모든 수는 서로 다릅니다.

내 풀이

function solution(numbers) {
    let answer = 0;
    
    for (let i = 0; i < 10; i++){ //배열에 요소가 들어가 있는지 확인하기 위해 9번 반복
        let a = numbers.includes(i) //특정 값 찾으면 true/ 없다면 false가 나오는 includes 이용해서 변수 선언 
        if (a === false){ //특정 값이 없으면
            answer += i //인덱스 번호는 0부터 시작, 고로 없는 번호를 더해 준다
        }
    }
    return answer; //반환
}

😊 혜인님 풀이 😊

function solution(numbers) {
    var answer = 0;
    var all = [1,2,3,4,5,6,7,8,9,];
    var sumAll = 0;
    var sumNum = 0;
    
    // 0~9를 모두 가진 배열의 합계sumAll을 for문으로 구해주고
    var all = [1,2,3,4,5,6,7,8,9,];
    for (let i = 0; i < all.length; i++) {
        sumAll += all[i];
    }
    
// 주어진 배열 numbers의 배열의 합계sumNum도 for문으로 구해주었습니다.
    for (let i = 0; i < numbers.length; i++) {
        sumNum += numbers[i];
    }
    
// 문제에서 0~9중 numbers 배열에 없는 값들의 합계는 
// 모두 가진 배열 합계에서 numbers 합계를 빼주면 된다.    
    return answer = sumAll - sumNum;
}
profile
하고 싶은 것 하면서 삽니다

0개의 댓글

관련 채용 정보