Oxygen Chrome

공부/Programmers

[프로그래머스/Python/Lv.0] 입문 | 최빈값 구하기

aribae 2024. 11. 16. 10:01

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

제한사항
0 < array의 길이 < 100
0 ≤ array의 원소 < 1000

 

입출력 예

 

입출력 예 #1
[1, 2, 3, 3, 3, 4]에서 1은 1개 2는 1개 3은 3개 4는 1개로 최빈값은 3입니다.


입출력 예 #2
[1, 1, 2, 2]에서 1은 2개 2는 2개로 최빈값이 1, 2입니다. 최빈값이 여러 개이므로 -1을 return 합니다.


입출력 예 #3
[1]에는 1만 있으므로 최빈값은 1입니다.

 

 


 

문제 풀이

1. c(count)가 가장 큰 값을 저장한다.

2. 저장된 값과 같은 개수를 가진 값이 있으면 -1을 return한다.

def solution(array):
    c = 0
    m = []
    for i in array:
        if array.count(i) > c:
            c = array.count(i)
            m = i
    for i in array:
        if i != m and array.count(i) ==c:
            return -1
    return m