【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;
} 
相关推荐
张健11564096488 小时前
使用信号量限制并发数量
开发语言·c++
jc06208 小时前
6.1云原生之Docker
c++·docker·云原生
叶子野格10 小时前
《C语言学习:指针》12
c语言·开发语言·c++·学习·visual studio
Fuyo_111911 小时前
C++ 内存管理
c++·笔记
澈20711 小时前
C++面向对象:类与对象核心解析
c++·算法
6Hzlia12 小时前
【Hot 100 刷题计划】 LeetCode 141. 环形链表 | C++ 哈希表直觉解法
c++·leetcode·链表
handler0113 小时前
Linux 进程探索:从 PCB 管理到 fork() 的写时拷贝
linux·c语言·c++·笔记·学习
众少成多积小致巨13 小时前
GNU Make 核心指南
android·c++
谭欣辰13 小时前
详细讲解 C++ 状压 DP
开发语言·c++·动态规划
William_wL_14 小时前
【C++】stack和queue的使用和实现(附加deque的简单介绍)
开发语言·c++