본문 바로가기
프로그래머스/Lv.0

최빈값 구하기 - Python, Counter

by 아찌방 2024. 11. 11.

 

 

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

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

 

풀이 - 나의 생각

Counter로 반복된 횟수를 구하고

 

max를 통해 최빈값을 구합니다.

 

Counter로 구한 값을 반복문을 돌려

 

최빈값과 같은 경우를 찾아냅니다.

 

이 경우가 1개 이상이라면

 

최빈값이 여러개 있는 거니까 -1을 반환하고

 

1개라면 그 값을 반환해줍니다.

 

 

코드

 

from collections import Counter
def solution(array):
    answer = -1
    cntNum = Counter(array)
    maxValue = max(cntNum.values())
    tmp = [k for k, v in cntNum.items() if v == maxValue]
    
    return tmp[0] if len(tmp) == 1 else -1

 

 

 

 

 

 

 

다음에 또 봐요

 

728x90