Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- K디지털기초역량훈련
- 프로그래머스 lv0
- 변수 선언
- 바이트디그리
- js split
- 리액트
- API
- margin-left
- react강의
- 자바스크립트
- javascript
- 호이스팅
- SVG
- 국비지원
- 내일배움카드
- React
- html
- flex
- 패스트캠퍼스
- flex item
- 코딩테스트 js
- CSS
- DOM
- 나라사랑카드
- js
- 프로그래머스 JS
- 노드
- 코딩테스트 lv0
- Flex Container
- udemy
Archives
- Today
- Total
꺾이지 않는 마음
[프로그래머스] Lv.0 짝수 홀수 개수 JS 풀이 본문
문제 설명
정수가 담긴 리스트 num_list가 주어질 때, num_list의 원소 중 짝수와 홀수의 개수를 담은 배열을 return 하도록 solution 함수를 완성해보세요.
제한사항
- 1 ≤ num_list의 길이 ≤ 100
- 0 ≤ num_list의 원소 ≤ 1,000
입출력 예
n | 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 countedEven = 0; let countedOdd = 0; num_list.forEach((ele)=>{ if(ele%2===1) { countedOdd += 1; } else { countedEven += 1; } }); return [countedEven, countedOdd]; }
짝수와 홀수를 구분하는 아주 기초적인 문제.
짝수와 홀수의 특성을 생각하면 쉽게 풀 수 있다.
각 수를 2로 나눴을 때 짝수는 0, 홀수는 1이 나온다.
그래서 나머지 연산자인 %를 사용해서 배열 안의 각 원소에 대입하면 된다.
물론 배열이니까 forEach문을 사용해서!
🟨다른 풀이
function solution(num_list) { var answer = [0,0]; for(let a of num_list){ answer[a%2] += 1 } return answer; }
제출 후에 다른 사람의 풀이를 보다가 발견한 풀이.
답으로 제출할 배열이 0과 1의 인덱스를 갖는다는 걸 이용해서
수를 나눴을 때 나머지가 0이면 0번 인덱스에 +1을,
나머지가 1이면 1번 인덱스에 +1을 해주는 방식으로 풀었다.
매우 창의적인 답안이라 가져와봤다.
오늘도 성장 +1 스택
'코딩테스트 기록' 카테고리의 다른 글
[프로그래머스] Lv.0 제곱수 판별하기 JS 풀이 (0) | 2022.10.25 |
---|---|
[프로그래머스] Lv.0 가장 큰 수 찾기 JS 풀이 (0) | 2022.10.25 |
[프로그래머스] Lv.0 문자열 뒤집기 JS 풀이 (0) | 2022.10.24 |
[프로그래머스] Lv.0 머쓱이보다 키 큰 사람 JS 풀이 (0) | 2022.10.24 |
[프로그래머스] LV.0 중복된 숫자 개수 JS 풀이 (0) | 2022.10.24 |
Comments