[JS] 짝수 홀수 개수

2023. 5. 2. 09:52코딩테스트

1. 문제설명


정수가 담긴 리스트 num_list가 주어질 때, num_list의 원소 중 짝수와 홀수의 개수를 담은 배열을 return 하도록 solution 함수를 완성해보세요.

제한 조건

  • 1 ≤ num_list의 길이 ≤ 100
  • 0 ≤ num_list의 원소 ≤ 1,000

입출력 예

my_string result
[1, 2, 3, 4, 5] [2,3]
[1,3,5,7] [0,4]

2.해결


  let result = [
    num_list.filter((i) => i % 2 === 0).length,
    num_list.filter((i) => i % 2 != 0).length
  ];

  return result;

배열의 각 요소가 홀수인지 짝수인지 판별을 하려면 배열의 요소에 접근해야했다.
그래서 filter를 선택했다.
filter함수는 배열을 반환한다.
filter로 홀수짝수를 판별하고 조건에 맞는 값만 배열에 담고 그 배열의 갯수를 가져와서 담아주었다.

3. 다른분들의 풀이방법


function solution(num_list) {
    var answer = [0,0];

    for(let a of num_list){
        answer[a%2] += 1
    }

    return answer;
}

for of을 사용하신 분이 계셔서 가져왔다.
a라는 변수로 각각의 요소에 접근을하고 그 안에서 미리 선언한 두개의 요소가 담겨있는 answer배열에 홀수와 짝수를 구분해 접근한다. 그리고 조건에 맞는값이 나오면 해당 요소를 1씩 증가해준다.
배열의 index를 잘 활용하면 사용할 곳이 많은거같고

'코딩테스트' 카테고리의 다른 글

[JS] 배열의 유사도  (0) 2023.05.04
[JS] 삼각형의 완성조건(1)  (0) 2023.05.03
[JS] 양꼬치  (0) 2023.05.02
[JS] 문자열 앞의 n 글자  (0) 2023.05.01
[JS] 문자열 곱하기  (0) 2023.05.01