728x90
반응형
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
"""
최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다.
정수 배열 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]728x90
반응형
'개발 > 문제풀이' 카테고리의 다른 글
| 프로그래머스 '소인수분해' 파이썬 풀이 (0) | 2023.02.16 |
|---|---|
| 프로그래머스 '특이한 정렬' 파이썬 풀이 (0) | 2023.02.16 |
| 프로그래머스 '저주의 숫자 3' 파이썬 풀이 (0) | 2023.02.16 |
| 프로그래머스 '겹치는 선분의 길이' 파이썬 풀이 (0) | 2023.02.16 |
| 프로그래머스 '외계어 사전' 파이썬 풀이 (0) | 2023.02.15 |
댓글