728x90
반응형
🙆♂️문제
🙋♂️풀이
문제 그대로 첫째 줄에는 산술평균(일반적인 평균)을 소수점 첫째 자리에서 반올림
둘째 줄에서는 중앙값
셋째 줄에서는 최빈값(가장 많이 나타나는 값)
넷째 줄에서는 범위(최대값 - 최소값)을 출력하면 됩니다.
🚀 입력받기
import sys
n= int(sys.stdin.readline())
arr = [int(sys.stdin.readline()) for _ in range(n)]
sys 라이브러리를 import하여 빠르게 입력받습니다.
🚀 산술평균 출력
average = round(sum(arr)/n)
print(average)
평균은 구하기 쉽습니다.
모두 합한 값을 입력 갯수로 나누고 round함수를 통해 반올림 합니다.
🚀 중앙값 출력
arr.sort()
mid = n//2
print(arr[mid])
sort 함수로 정렬 후 중간 인덱스 값을 구하고 2로 나눈 값을 출력합니다.
🚀 최빈값 출력
from collections import Counter
mode = Counter(arr).most_common()
if len(mode) > 1:
if mode[0][1] == mode[1][1]:
print(mode[1][0])
else:
print(mode[0][0])
else:
print(mode[0][0])
Counter 라이브러리를 improt하여 최빈값을 구합니다.
최빈값이 객체 형태로 저장됩니다.
{값 : 빈도 수}로 저장됩니다. 정렬을 해두었기에 빈도 수가 같은 값이여도 작은 수부터 정리되는데
0번 인덱스와 1번 인덱스의 빈도수 값이 같다면 그 다음 수를 출력
아니면 0번 인덱스를 출력합니다.
그리고 애초에 입력값이 하나면 그냥 출력합니다.
🚀 범위 출력
k=max(arr)-min(arr)
print(k)
max함수와 min함수를 통해여 최대값 - 최소값을 했습니다.
728x90
반응형
'코딩테스트 > 백준' 카테고리의 다른 글
[백준][Python] 3003. 킹, 퀸, 룩, 비숏, 나이트, 폰 (0) | 2022.08.22 |
---|---|
[백준][Python] 25305. 커트라인 (0) | 2022.08.22 |
[백준][Python] 10989. 수 정렬하기 3 (0) | 2022.07.19 |
[백준][Python] 2751. 수 정렬하기 2 (0) | 2022.07.18 |
[백준][Python] 2750. 수 정렬하기 (0) | 2022.07.18 |