백준 온라인 저지 [BOJ]/PYTHON [파이썬]
[백준(BOJ)] 2108번 : 통계학 - PYTHON[파이썬]
퉁이리
2021. 12. 5. 19:07
반응형
https://www.acmicpc.net/problem/2108
⊙ 문제
⊙ 입력
⊙ 출력
⊙ 예제 입출력
⊙ 알고리즘 분류
- 구현
- 정렬
⊙ 문제 접근 과정
배열에 값들을 전부 저장해주고 제일 먼저 정렬을 했다.
그다음은 첫 번째 조건인 평균을 구하기 위해 sum 함수를 사용하여 간단히 구해주었고,
두 번째 조건은 배열의 개수가 홀수개이기에 N//2를 하여 바로 출력해주었다.
정렬은 이미 실행되어 있으니.
세 번째 조건은 Counter를 사용했는데 처음 사용해봤다. collections에 있는 함수인데,
이를 이용하여 가장 많이 나온 수를 구할 수 있었다.
마지막으로 네 번째 조건은 max 함수와 min 함수를 이용하여 출력해주었다.
⊙ 문제 풀이
from collections import Counter
import sys
input = sys.stdin.readline
N = int(input())
arr = []
for _ in range(N):
arr.append(int(input()))
arr.sort()
print(round(sum(arr)/N))
print(arr[N//2])
temp = Counter(arr).most_common()
if len(arr) > 1:
if temp[0][1] == temp[1][1]:
print(temp[1][0])
else:
print(temp[0][0])
else:
print(temp[0][0])
print(max(arr) - min(arr))
⊙ 결과
⊙ 마무리
NONE
좋아요는 로그인하지 않아도 누를 수 있습니다!
728x90
반응형