학생들의 점수의 최빈값을 구하는 문제이다
- Idea : 계수정렬, 최빈값이 여러개일 때 인덱스 찾기
반응형
학생 점수의 최대값이 100이라고 계수정렬할 리스트를 [0]*101로 설정하지 않아도 된다, 받은 리스트 중 제일 큰 값에 1 만 더한 길이만큼으로 생성해도 충분하기 때문!
파이썬의 max와 index를 이용하면 제일 큰 값 중 제일 작은 인덱스를 알려주기에 인덱스가 여러개일 경우 아래와 같은 방법을 사용할 수 있다.
T = int(input())
for i in range(1, T+1):
n = int(input())
arr = list(map(int, input().split()))
cnt_arr = [0] * (max(arr) + 1)
for j in arr:
cnt_arr[j] += 1
tmp = [idx for idx, value in enumerate(cnt_arr) if max(cnt_arr) == cnt_arr[idx]]
print(f"#{i} {tmp[-1]}")
끗
반응형
'🔧알고리즘' 카테고리의 다른 글
[BOJ][파이썬, 자바]11660 구간 합 구하기5 (0) | 2022.08.03 |
---|---|
[프로그래머스]체육복, 파이썬(python) (0) | 2022.06.09 |
[swea]1983. 조교의 성적 매기기, 파이썬(python) (0) | 2022.05.18 |
[swea]2056. 연월일 달력, 파이썬(python) (0) | 2022.05.17 |
백준을 풀면 자동으로 내 깃허브에 커밋을? (BaekjoonHub, 백준허브) (0) | 2022.01.05 |