https://school.programmers.co.kr/learn/courses/30/lessons/120812
function solution(array) {
// 최빈값 여러개면 -1 리턴
if(array.length === 1){
return array[0];
}
const obj = {};
array.forEach((a) => {
if(obj[a] === undefined) obj[a] = 1;
else obj[a] += 1;
});
const keyList = Object.keys(obj);
let cnt = 1;
let max = -1;
let answer = '';
keyList.forEach(key => {
if(max === obj[key]) {
cnt ++;
}
if(max < obj[key]) {
max = obj[key];
answer = key;
cnt = 1;
}
});
return cnt > 1 ? -1 : Number(answer);
}
728x90
'Algorithm&CodingTest > Programmers' 카테고리의 다른 글
[Programmers] 코딩테스트 입문 - 종이 자르기 (0) | 2023.02.10 |
---|---|
[Programmers] 완전탐색 - 최소직사각형 (0) | 2023.02.09 |
[Programmers] 코딩테스트 입문 - 캐릭터의 좌표 (0) | 2023.02.09 |
[Programmers] 코딩테스트입문 - 삼각형의 완성조건 (2) (0) | 2023.02.09 |
[Programmers] 월간 코드 챌린지 시즌2 - 약수의 개수와 덧셈 (0) | 2023.02.06 |