프로그래머스 ‘최빈값 구하기’ 파이썬

"""
최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다.

정수 배열 array가 매개변수로 주어질 때, 최빈값을 return 하도록 solution 함수를 완성해보세요. 최빈값이 여러 개면 -1을 return 합니다.

""" # max_value를 사용해서 풀었다.

# 0번째는 array 값, 1번째는 그 값의 개수, 2번째는 개수가 같은게 있는지 여부이다.

# set(array)를 통해 array 값들을 1개씩만 써서 for문을 돈다.

# v의 개수가 저장한 최대 개수보다 많다면 max_value값을 고쳐준다.

# v의 개수와 max_value의 개수가 같다면 1을 써준다.

def solution(array): max_value = (-1, -1, 0) for v in set(array): v_count = array.count(v) if v_count > max_value(1): max_value = (v, array.count(v), 0) elif v_count == max_value(1): max_value(-1) = 1 return -1 if max_value(-1) else max_value(0)