1 条题解

  • 0
    @ 2025-8-24 22:13:54

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar Luogu_Wangzhi
    互关私信

    搬运于2025-08-24 22:13:54,当前版本为作者最后更新于2025-07-04 12:02:08,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    题解:P5738 【深基7.例4】歌唱比赛。

    题意:

    nn 名同学接受 mm 名评委的评分,每名同学得分去掉一个最高分和最低分,剩下 m2m − 2 个评分的平均数就是最终得分,求最高的得分。

    解法:

    1. 先算每名同学的总得分。

    2. 再减去最低分和最高分。

    3. 记录最高的总得分。

    4. 输出最高得分除以 m2m-2 即可。

    5. 记得保留 22 位小数。

    code

    #include<bits/stdc++.h>
    using namespace std;
    double a[105][25];
    double q[105];
    double w[105];
    int main(){
    	int n,m;
    	cin>>n>>m;
    	double sum=0;
    	for(int i=1;i<=n;i++){
    		w[i]=15;
    	}
    	for(int i=1;i<=n;i++){ 
    		for(int j=1;j<=m;j++){
    			cin>>a[i][j];
    			w[i]=min(a[i][j],w[i]);
    			q[i]=max(a[i][j],q[i]);//记录最高分和最低分。
    		}
    	}
    	
    	for(int i=1;i<=n;i++){
    		double s=0;
    		for(int j=1;j<=m;j++){
    			s+=a[i][j];//计算每名同学的总得分。
    		}
    		s-=w[i];
    		s-=q[i];//减去最低分和最高分。
    		sum=max(sum,s);//记录最高的总得分。
    	} 
    	printf("%.2lf",sum/(m-2));
    } 
    
    • 1

    信息

    ID
    4716
    时间
    1000ms
    内存
    125MiB
    难度
    2
    标签
    (无)
    递交数
    0
    已通过
    0
    上传者