@[louzezhong20130517](/user/989399) 去掉的是每个选手自己评分中的最大值和最小值,你是直接统一去掉所有人的最大值和最小值了。
by AnneMHere @ 2023-08-31 11:07:58
@[louzezhong20130517](/user/989399) 为什么输出的是 `k[0]` ?
by Hagasei @ 2023-08-31 11:08:23
啊好像我理解的也不太准确,但每个选手都只对应两个统一的 maxn minn 是有问题的
by AnneMHere @ 2023-08-31 11:11:41
$k$ 数组应该在输入时就要更新,因为 $maxn$ 和 $minn$ 并不是数组,最后输入完成更新 $k$ 数组的时候所用的 $maxn$ 和 $minn$ 只是最后一名选手的得分
注意要把除 $n,m$ 之外的变量都定义成 $double$ 类型
```
#include<bits/stdc++.h>
using namespace std;
double k[1000];
int n,m;
double maxx;
int main(){
cin>>n>>m;
int i,j;
for(i=1;i<=n;i++)
{
double minn=10000000,maxn=0,sum=0,a;
for(j=1;j<=m;j++)
{
cin>>a;
maxn=max(maxn,a);
minn=min(minn,a);
sum+=a;
}
sum=sum-maxn-minn;
sum=(sum*1.0)/(m-2);
maxx=max(maxx,sum);
}
printf("%.2lf",maxx);
return 0;
}
```
by Tongyq0722 @ 2023-08-31 11:15:43
@[Tongyq0722](/user/677422)
谢了!!!
by louzezhong20130517 @ 2023-09-01 13:43:55