딕셔너리 & set 차이가 있다는 것을 놓쳤다.
처음에는 set으로 딕셔너리, 리스트를 만들어서 카운트 함수를 사용하고 갯수를 세고 blabla~~~... 너무 돌아갔다..(실패)
def solution(array):
arr = list(set(array))
dict = {}
for i in arr:
count = array.count(i)
dict[i] = count
answer = sorted(dict.values(), reverse=True)
if len(answer) > 1 and answer[0] == answer[1]:
return -1
else:
return next(iter(answer))
가볍게 처음부터 딕셔너리 선언 후 key & value 로 갯수를 늘리고 최빈값을 찾으면 되는것..
def solution(array):
answer = 0
dict_array = {}
for i in array:
if i in dict_array:
dict_array[i] += 1
else:
dict_array[i] = 1
max_idx = -1
max_cnt = 0
for i in dict_array:
if dict_array[i] > max_cnt:
max_cnt = dict_array[i]
max_idx = i
elif dict_array[i] == max_cnt:
max_idx = -1
answer = max_idx
return answer