[프로그래머스 Lv.0] 최빈값 구하기

blockzzie·2023년 4월 14일
0

프로그래머스

목록 보기
6/52

문제 설명

최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다. 정수 배열 array가 매개변수로 주어질 때, 최빈값을 return 하도록 solution 함수를 완성해보세요. 최빈값이 여러 개면 -1을 return 합니다.

제한사항

0 < array의 길이 < 100
0 ≤ array의 원소 < 1000

나의 답

function solution(array) {
    var answer = 0;
    const newObject = {};
    
    array.forEach((item) => {
        newObject[item] ? (newObject[item] += 1) : (newObject[item] = 1)
    })
    
    const findMax = Math.max(...Object.values(newObject));
    const findNumber = Object.keys(newObject).filter((i) => newObject[i] === findMax);
    
    answer = findNumber.length === 1 ? parseInt(findNumber[0]) : -1
    
    return answer;
}
profile
막무가내 코딩노트

0개의 댓글