PROB1024 小明算分
描述:
小明组织了一场写作比赛,共有 n 名同学参加他组织的写作比赛。
小明邀请了 m 名评委的评分,评分范围是 0 到 10 分。而每位同学的得分就是这些评委给分中去掉一个最高分,去掉一个最低分,剩下 m−2 个评分的平均数。
小明想知道得分最高的同学分数是多少,所以他想请你帮忙告诉他,最终评分保留 2 位小数。
输入:
第一行两个整数 n,m,表示参加写作比赛的同学数量和评委的数量,题目保证 1≤n≤100,3≤m≤20。
接下来 n 行,每行 m 个整数 S1,S2,⋯,Sm,表示每位评委对某位同学的具体打分 s,题目保证 0≤s≤10。
输出:
第一行一个浮点数,输出最终评分最高的同学的分数,保留两位小数。
样例输入:
7 6 4 7 2 6 10 7 0 5 0 10 3 10 2 6 8 4 3 6 6 3 6 7 5 8 5 9 3 3 8 1 5 9 9 3 2 0 5 8 0 4 1 10
样例输出:
6.00
基于python实现的代码:
def max_score(n, m, scroes):
max_score = 0
for score in scroes:
score.sort()
score = score[1:-1]
avg_score = sum(score) / (m-2)
max_score = max(max_score, avg_score)
return "{:.2f}".format(max_score)
n, m = map(int,input().strip().split())
scroes = [list(map(int, input().strip().split())) for i in range(n)]
print(max_score(n, m, scroes))