https://school.programmers.co.kr/learn/courses/30/lessons/86051
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제 설명
0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ numbers의 길이 ≤ 9
- 0 ≤ numbers의 모든 원소 ≤ 9
- numbers의 모든 원소는 서로 다릅니다.
입출력 예
| numbers | result |
| [1,2,3,4,6,7,8,0] | 14 |
| [5,8,4,0,6,7,9] | 6 |
입출력 예 설명
입출력 예 #1
- 5, 9가 numbers에 없으므로, 5 + 9 = 14를 return 해야 합니다.
입출력 예 #2
- 1, 2, 3이 numbers에 없으므로, 1 + 2 + 3 = 6을 return 해야 합니다.
나의 풀이
numbers의 숫자들을 sort 한 뒤, zeroToNine이 0에서 9를 나열한 뒤, zeroToNine의 숫자들을 차례로 거쳐가며 list의 첫 번째 숫자와 같으면 list의 첫 번째 숫자를 없애고, list의 첫 번째 숫자와 같지 않을 때는 answer에 그 값을 더해줬다.


다른 풀이
reduce() 메서드를 이용하여 푼 풀이다.

reduce() 메서드에 0~9를 모두더한 45에서 합산한 모든 배열의 값을 빼주었다.
없는 숫자의 합 = 0부터 9까지 전체 합 - 있는 숫자의 합!
[ 자바스크립트 ] reduce() 함수 이해하기
구문 arr.reduce(callback[, initialValue]); reduce() 함수는 네 개의 인자를 가진다. 누산기 (acc) 현재 값 (cur) 현재 인덱스 (idx) 원본 배열 (src) reduce() 함수의 반환 값은 누산기에 할당되고, 누산기는..
codesign.tistory.com

'코딩 문제 > 프로그래머스 [ JavaScript ]' 카테고리의 다른 글
| [ 프로그래머스 / JavaScript ] 같은 숫자는 싫어 (0) | 2022.09.19 |
|---|---|
| [ 프로그래머스 / JavaScript ] 최소직사각형 (0) | 2022.09.18 |
| [ 프로그래머스 / JavaScript ] 문자열 내림차순으로 배치하기 (0) | 2022.09.18 |
| [ 프로그래머스 / JavaScript ] 내적 (0) | 2022.09.16 |
| [ 프로그래머스 / JavaScript ] 음양 더하기 (0) | 2022.09.16 |
댓글