Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- 평행
- 문자열이 몇 번 등장하는지 세기
- 조건 문자열
- 저주의 숫자 3
- 수열과 구간 쿼리 2
- Android Studio
- 최빈값 구하기
- 무작위로 K개의 수 뽑기
- 등차수열의 특정한 항만 더하기
- programmers
- 코딩테스트
- 컨트롤제트
- 콜라츠 수열 만들기
- 이차원 배열 대각선 순회하기
- 등수 매기기
- OX퀴즈
- 소인수분해
- 분수의 덧셈
- 왼쪽 오른쪽
- flutter
- 프로그래머스
- 다항식 더하기
- 합성수 찾기
- 조건에 맞게 수열 변환하기 2
Archives
- Today
- Total
지원연구소 공식 블로그
[PROGRAMMERS] 최빈값 구하기 (LV. 0) -Python 본문
[ 문제 ]
최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다. 정수 배열 array가 매개변수로 주어질 때, 최빈값을 return 하도록 solution 함수를 완성해보세요. 최빈값이 여러 개면 -1을 return 합니다.
[ 제한사항 ]
- 0 < array의 길이 < 100
- 0 ≤ array의 원소 < 1000
[ 입출력 예 ]
array | result |
[1, 2, 3, 3, 3, 4] | 3 |
[1, 1, 2, 2] | -1 |
[1] | 1 |
< 입출력 예 #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. 요소 개수를 입력할 변수 times와 times가 가장 높은 값을 입력할 변수 most_num 선언
2. array로 반복을 하면서 times보다 현재 요소의 개수가 많을 경우 times에 count() 메소드로 값 입력하고 most_num에 값 입력
3. times와 현재 요소 개수가 동일한데 most_num과 현재 요소가 다를 경우 most_num에 -1 입력
4. 모든 반복 종료 후 가장 많이 나오는 값 most_num 반환
[ solution.py ]
def solution(array):
times = 0
most_num = 0
for i in array:
if array.count(i) > times:
times = array.count(i)
most_num = i
elif array.count(i) == times and most_num != i:
most_num = -1
return most_num
> 🌻피드백은 언제나 환영입니다🌻 <
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[PROGRAMMERS] 분수의 덧셈 (LV. 0) - Python (0) | 2024.05.02 |
---|---|
[PROGRAMMERS] OX퀴즈 (LV. 0) - Python (0) | 2024.05.02 |
[PROGRAMMERS] 다항식 더하기 (LV. 0) - Python (0) | 2024.05.02 |
[PROGRAMMERS] 저주의 숫자 3 (LV. 0) - Python (0) | 2024.05.02 |
[PROGRAMMERS] 등수 매기기 (LV. 0) - Python (0) | 2024.05.02 |