우선 이문제를 보고는 count함수를 사용해서 전체 array와 다른 list한개를 만들어서 list.append(array.count(i))라고 for문을 통해서 반복을 돌려 추가한다음 그 list에서 최댓값을 구하려고 생각을 하고 코드를 짜보았는데 if문인 조건을 적는 방법이 여기치 않아 방법을 바꾸어 풀게 되었다.
def solution(array):
answer = 0
max_count = 0
set_array = set(array)
# array를 써도 되지 않나요? => 안됩니다. 3이 두개면 3을 두번사용...
for i in set_array:
count = array.count(i)
if max_count < count:
max_count = count
answer = i
elif max_count == count:
answer = -1
return answer
def solution(array):
while len(array) != 0:
for i, a in enumerate(set(array)):
array.remove(a)
if i == 0: return a
return -1
이코드는 이해하기가 어려울 수 있기에 풀이는 밑에 링크를 보고 이해하시면 좋습니다, 설명이 잘되있습니다.