📕 문제 설명
정수가 담긴 리스트 num_list가 주어질 때, num_list의 원소 중 짝수와 홀수의 개수를 담은 배열을 return 하도록 solution 함수를 완성해보세요.
⭐ 제한사항
- 1 ≤ num_list의 길이 ≤ 100
- 0 ≤ num_list의 원소 ≤ 1,000
💻 입출력 예
num_list | result |
[1, 2, 3, 4, 5] | [2, 3] |
[1, 3, 5, 7] | [0, 4] |
📚 입출력 예 설명
입출력 예 #1
- [1, 2, 3, 4, 5]에는 짝수가 2, 4로 두 개, 홀수가 1, 3, 5로 세 개 있습니다.
입출력 예 #2
- [1, 3, 5, 7]에는 짝수가 없고 홀수가 네 개 있습니다.
😊 나의 답변
1️⃣ forEach로 순회하기
function solution(num_list) {
let even = 0, odd = 0;
num_list.forEach((v) => v % 2 === 0 ? even++ : odd++);
return [even, odd];
}
2️⃣ filter로 짝수 / 홀수로 구성된 배열 생성하고, 길이 반환하기
function solution(num_list) {
return [num_list.filter((v) => !(v % 2)).length, num_list.filter((v) => v % 2).length]
}
⭐ 참고할 답변
function solution(list) {
return list.reduce((acc, cur) => (cur & 1 ? acc[1]++ : acc[0]++, acc), [0, 0])
}
reduce로 배열을 반환할 수 있는 건 몰랐다!
새로운 사실을 하나 더 알게 되었다.
728x90
반응형
'프로그래머스 > Lv. 0 코딩테스트 입문' 카테고리의 다른 글
[프로그래머스] Lv. 0 코딩테스트 입문 100문제 풀이 완료! (0) | 2023.08.28 |
---|---|
[프로그래머스] Lv.0 평행 ⭐⭐⭐ / JS (0) | 2023.08.28 |
[프로그래머스] Lv.0 문자 반복 출력하기 / JS (0) | 2023.08.28 |
[프로그래머스] Lv.0 특정 문자 제거하기 / JS (0) | 2023.08.28 |
[프로그래머스] Lv.0 각도기 / JS (0) | 2023.08.28 |