한 걸음씩 기록하며
[프로그래머스 코딩테스트] 없는 숫자 더하기 본문
[없는 숫자 더하기]
문제 설명 :
0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요.
⛏제한 조건
- 1 ≤ numbers의 길이 ≤ 9
- 0 ≤ numbers의 모든 수 ≤ 9
- numbers의 모든 수는 서로 다릅니다.
📁 입출력 예시
👉🏻 답안
1) for문으로 직접적으로 대조하여 answer에 값 더하기
function solution(numbers) {
let answer = 0;
for (let i = 0; i < 10; i++) { // for문으로 0~10까지 반복하고
if (!numbers.includes(i)) { // 배열 안에 i값이 들어있는지 확인하여
answer += i; // 들어있지 않다면 answer에 i값을 더한다.
}
}
return answer;
}
2) for문으로 합을 구한 후 계산하기
function solution(numbers) {
let sum = 0;
for (let i = 0; i < 10; i++) {
sum += i; // for문으로 0~10까지 합계를 구한다.
}
let arrSum = 0;
for (let i = 0; i < numbers.length; i++) { // for문으로 배열 안에 모든 값의 합계를 구한다.
arrSum += numbers[i];
} return sum - arrSum; // 두개를 계산하여 리턴
}
📑 간단한 설명
문제를 보고 위에서 말한 두 가지 방법이 가능할 것 같았습니다.
.includes() 함수는 배열 안에 파라미터와 같은 값이 있는지 찾고, boolean 형으로 리턴하는 함수입니다.
'알고리즘 & 코딩테스트' 카테고리의 다른 글
[프로그래머스 코딩테스트] 음양 더하기 (0) | 2022.01.14 |
---|---|
[프로그래머스 코딩테스트] 문자열을 정수로 바꾸기 (0) | 2022.01.14 |
[프로그래머스 코딩테스트] 두 정수 사이의 합 (0) | 2022.01.14 |
[프로그래머스 코딩테스트] 가운데 글자 가져오기 (0) | 2022.01.14 |
[프로그래머스 코딩테스트] 직사각형 별찍기 (0) | 2022.01.14 |
Comments