저장을 습관화

프로그래머스 LV.0 중복된 숫자 개수 본문

코딩 테스트/프로그래머스 - 자바스크립트

프로그래머스 LV.0 중복된 숫자 개수

ctrs 2023. 9. 14. 00:33

프로그래머스 LV.0 중복된 숫자 개수

https://school.programmers.co.kr/learn/courses/30/lessons/120583

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

1. 문제 명

중복된 숫자 개수


2. 문제 설명

정수가 담긴 배열 array와 정수 n이 매개변수로 주어질 때, array에 n이 몇 개 있는 지를 return 하도록 solution 함수를 완성해보세요.


3. 제한 사항

- 1 ≤ array의 길이 ≤ 100

- 0 ≤ array의 원소 ≤ 1,000

- 0 ≤ n ≤ 1,000


4. 예시

array n result
[1, 1, 2, 3, 4, 5] 1 2
[0, 2, 3, 4] 1 0


5. 기본 제공 코드

function solution(array, n) {
    var answer = 0;
    return answer;
}


6. 제출한 내 답

const solution = (array, n) => {
  let answer = 0;
  array.forEach((element) => {
    if (n === element) {
      answer += 1;
    }
  });
  return answer;
};

 

6-2. VSC에 작성한 내용

const solution = (array, n) => {
  let answer = 0;
  array.forEach((element) => {
    if (n === element) {
      answer += 1;
    }
  });
  return answer;
};

// 테스트
console.log(solution([1, 1, 2, 3, 4, 5], 1));


7. 특이사항

reduce에서 시달렸더니 reduce와 foreach가 헷갈리기 시작했다

큰일이다


8. 다른 사람이 작성한 답

8-1. filter

function solution(array, n) {
    var answer = 0;
    let Array = array.filter((item) => item === n)
    answer = Array.length

    return answer;
}

 

8-2. 또 다른 filter

function solution(array, n) {
    return array.filter(v=>v===n).length;
}