【描述】n名同学参加歌唱比赛,并接受m(m≤20)名评委的评分,评分范围是0~10分。每名同学的得分就是这些评委给分中去掉一个最高分,去掉一个最低分,剩下m-2个评分的平均数。请问:得分最高的同学分数是多少?评分保留2位小数。
【输入】n+1行,第一行两个整数n和m,用空格隔开;接下来n行每行有m个整数,是每个同学的得分。
【输出】一个浮点数,保留小数点后两位。
【样例输入】
3 4
10 6 9 8
9 7 8 8
8 6 7 5
【样例输出】
8.50
源代码:
#include<bits/stdc++.h>
using namespace std;
int s[10001];
int a[30];
int main(){
int n,m,max,min;
float s;
max=INT_MIN;
min=INT_MAX;
cin>>n>>m;
for(int i=1;i<=n;i++){
int sum=0;
for(int j=1;j<=m;j++){
cin>>a[j];
if(a[j]>max) max=a[j];
if(a[j]<min) min=a[j];
}
for(int w=1;w<=m;w++){
sum=sum+a[w];
}
sum=sum-max-min;
s=sum*1.0/(m-2);
}
printf("%.2f",s);
return 0;
}
作者:求点赞
本程序解决了一个特定的问题:计算多名参赛者在歌唱比赛中被多名评委评分后的最终得分。通过排除最高和最低分来确保评分的公平性。最终输出最高得分保留两位小数。

684

被折叠的 条评论
为什么被折叠?



