[白俊-2188]統計学
7409 ワード
質問する
リンク
コード#コード#
import sys
from collections import Counter
input = sys.stdin.readline
n = int(input())
value = []
for _ in range(n) :
value.append(int(input()))
value.sort()
# 산술평균
sAvg = round(sum(value) / n)
print(sAvg)
# 중앙값
mid = (n-1) // 2
print(value[mid])
# 최빈값
if len(value) == 1 :
print(value[0])
else :
cnt = Counter(value)
if len(cnt) == 1 :
print(cnt)
print(max(cnt))
else :
cnt = cnt.most_common(2)
print(cnt)
if cnt[0][1] > cnt[1][1] :
print(cnt[0][0])
elif cnt[0][1] == cnt[1][1] :
print(cnt[1][0])
#범위
print(max(value) - min(value))
に答える
算術平均値、中央値、範囲は解きやすいが、最貧値を求めるのは難しい.
最初は並びです.私はcount(検索する数字)で問題を解いたが、タイムアウトしたのでcounterを使った.
(2108問の問題を探します.for文でcountを使用すると、for文も配列で数値を検索し、countもループで検索するのでタイムアウトします.リンク)
入力値が
2-1. リストに値がある場合、出力
3-1. 数量が異なる場合は、最初の値を出力します.
3-2. 同じ数の場合、2番目の値
Reference
この問題について([白俊-2188]統計学), 我々は、より多くの情報をここで見つけました https://velog.io/@malgam/백준-2108-통계학テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol