문제 설명
0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다.
numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하세요
제한사항
- 1<= numbers의 길이 <= 9
- 0<= numbers의 모든 후 <= 9
- numbers의 모든 수는 서로 다릅니다.
내가 푼 문제 풀이
1. for문을 사용해서 0부터 9까지 반복문을 돌린다.
2. includes() 메소드를 사용해서 i가 numbers 배열 안에 있는 지 확인한다.
3. ! 연산자를 사용해서 배열 i가 numbers 배열 안에 없을 경우 num에 i를 더한다.
4. num은 answer 변수에 담고 return 한다.
includes란 "포함하다"는 뜻으로 배열이 특정값을 포함하고 있는 지의 여부를 boolean 값으로 반환한다.
function solution(numbers) {
let answer = -1;
let num = 0
for(let i = 0; i<10; i++){
if(!numbers.includes(i)){
num += i
}
}
return answer = num;
}
https://hianna.tistory.com/403
다른 사람이 푼 문제 풀이
1. 반복문을 돌려서 0부터 9까지의 합을 구한다.
2. for of 명령문를 사용해서 numbers의 값들을 number 상수에 하나씩 넣는다.
3. sum에서 number의 값을 뺸다.
(1번의 반복문은 let sum = 45로 대체 가능하다.)
function solution(numbers) {
let answer = -1;
let sum = 0;
for(let i=0; i<10; i++){
sum+=i
}
// 0부터 9까지의 숫자를
// 반복문을 사용해서 더한다.
// 더한 값을 sum 변수에 담는다.
for(const number of numbers){
sum-=number
}
// for of를 사용해서 numbers의 있는 값들을 number에 넣고
// sum에서 하나씩 빼준다.
return answer=num;
}
function solution(numbers) {
let answer = -1;
const sum = 45
for(const number of numbers){
sum-=number
}
// for of를 사용해서 numbers의 있는 값들을 number에 넣고
// sum에서 하나씩 빼준다.
return answer=sum;
}
https://programmers.co.kr/learn/courses/30/lessons/86051
'항해 중 > 2주차 알고리즘(프로그래머스)' 카테고리의 다른 글
배열함수(forEach, map, filter, some, every, find, findIndex) (0) | 2021.11.08 |
---|---|
1일차 → 음양 더하기(삼항연산자, *-1) (0) | 2021.11.08 |
1일차 → 문자열을 정수로 바꾸기(parseInt(), Number(), 숫자 연산자) (0) | 2021.11.08 |
1일차 → 평균 구하기(reduce()) (0) | 2021.11.08 |
1일차 → 직사각형 별 찍기(.repeat()) (0) | 2021.11.08 |
댓글