【C++题解】1168. 歌唱比赛评分

问题:1168. 歌唱比赛评分

类型:数组找数


题目描述:

四(1) 班要举行一次歌唱比赛,以选拔更好的苗子参加校的歌唱比赛。评分办法如下:设 N 个评委,打 N 个分数( 0≤每个分数≤10 ),去掉一个最高分,去掉一个最低分,剩下的评委的平均分即为该选手的最后得分。

但是选手太多了,靠人工计算每个选手的得分太慢太麻烦。你能不能帮帮他们,设计一个程序让计算机来算出选手的最后得分呢?

输入:

第一行为一个整数 N (5≤N≤10);

第二行为 N 个整数 Ai (0≤Ai≤10 )。

输出:

选手的最后得分(保留两位小数)。

样例:

输入:

cpp 复制代码
5
5 6 7 8 9

输出:

cpp 复制代码
7.00

完整代码如下:

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int main(){
	//一、分析问题
	//已知:N 个分数(5≤N≤10);
	//未知:该选手的最后得分(保留两位小数)。
	//关系:	去掉一个最高分,去掉一个最低分,剩下的评委的平均分即为该选手的最后得分。
	//二、定义变量(已知、未知、关系)
	int n,a[11],mmax=INT_MIN,mmin=INT_MAX; 
	double r=0.0;
	//三、输入已知
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>a[i];
		r+=a[i];
		if(a[i]>mmax) mmax=a[i];
		if(a[i]<mmin) mmin=a[i];
	}
	//四、根据关系计算
	r=(r-mmax-mmin)/(n-2);
	//五、输出未知 
	cout<<fixed<<setprecision(2)<<r;
	return 0;
} 
相关推荐
Max_uuc5 分钟前
【C++ 并发】告别关中断:手写 ISR 安全的无锁环形队列 (Lock-Free RingBuffer)
开发语言·c++
哈哈不让取名字18 分钟前
C++代码冗余消除
开发语言·c++·算法
heart_fly_in_sky19 分钟前
RK3576平台OpenCL GPU编程实战指南(Lesson 2)
c++
lixzest27 分钟前
C++工程师的成长
开发语言·c++·程序人生·职场和发展
2301_7657031432 分钟前
C++中的策略模式应用
开发语言·c++·算法
GHL28427109033 分钟前
*:端口 & 127.0.0.1:端口
运维·服务器·c++
王老师青少年编程34 分钟前
信奥赛C++提高组csp-s之树形DP详解及编程实例
c++·动态规划·树形dp·csp·信奥赛·csp-s·提高组
m0_7482486544 分钟前
C/C++ 项目与 Rust 项目区别
c语言·c++·rust
bugu___1 小时前
仿muduo库实现并发服务器(3)
开发语言·c++
m0_686041611 小时前
C++中的装饰器模式变体
开发语言·c++·算法