按照题意模拟即可。没有必要开数组和结构体之类,直接用中间变量替代就行
#include<bits/stdc++.h>
using namespace std;
int n,m;
double ans,sum,maxn,minn;//虽然题目没说,但个人认为double保险
int main(){
cin>>n>>m;
for(int i=1;i<=n;++i){
sum=maxn=0,minn=0x3f3f3f3f;
//一定要记得初始化!调了半天才发现
for(int j=1;j<=m;++j){
double x;
cin>>x;
sum+=x;
maxn=max(maxn,x);
minn=min(minn,x);
}
sum-=(maxn+minn);//最后统一减去,加个括号保险
ans=max(ans,sum/(m-2));//注意是m-2个数的平均数
}
cout<<fixed<<setprecision(2)<<ans<<endl;
return 0;
}
本文介绍了一种使用C++进行编程竞赛的策略,通过实例演示了如何高效地处理输入数据,计算最大平均值,以及避免常见错误。文章强调了变量初始化的重要性,并提供了完整的代码示例。
666

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



