프로그래머스 - LV.0 - 최빈값 구하기

박종일·2023년 8월 5일
0

프로그래머스 LV.0

목록 보기
30/46

나의 풀이

def solution(array):
	count = [0] * (max(array)+1) # 숫자 출연 횟수를 셀 리스트

	for i in array:
		count[i] += 1

	m = 0 # 최빈값의 개수
	for c in count:
		if c == max(count):
			m += 1
    
	if m > 1: # 최빈값이 2개 이상이면 -1을 리턴
		return -1
	else: # 최빈값이 1개이면 해당 숫자를 리턴
		return count.index(max(count))

다른 풀이

def solution(array):
    answer = 0
    idx = [0] * 1001
    for i in array:
        idx[i] +=1
    if idx.count(max(idx)) >1:
        return -1
    return idx.index(max(idx))

나의 풀이든 다른 풀이든 숫자 출연 횟수를 셀 리스트를 얼마나 만들 것인지 문제에서 찾아 만들어내는 것이 포인트인 문제이다!

profile
존경하는 인물: 스토브리그 백승수 단장(남궁민)

0개의 댓글