| Time Limit: 2000MS | Memory Limit: 65536K | |
| Total Submissions: 6825 | Accepted: 4774 |
Description
One of the unique features of this contest is the great number of judges that sometimes counts up to one hundred. The number of judges may differ from one contestant to another, because judges with any relationship whatsoever with a specific contestant are temporarily excluded for scoring his/her performance.
Basically, scores given to a contestant's performance by the judges are averaged to decide his/her score. To avoid letting judges with eccentric viewpoints too much influence the score, the highest and the lowest scores are set aside in this calculation. If the same highest score is marked by two or more judges, only one of them is ignored. The same is with the lowest score. The average, which may contain fractions, are truncated down to obtain final score as an integer.
You are asked to write a program that computes the scores of performances, given the scores of all the judges, to speed up the event to be suited for a TV program.
Input
The input consists of a number of datasets, each corresponding to a contestant's performance. There are no more than 20 datasets in the input.
A dataset begins with a line with an integer n, the number of judges participated in scoring the performance (3 ≤ n ≤ 100). Each of the n lines following it has an integral score s (0 ≤ s ≤ 1000) marked by a judge. No other characters except for digits to express these numbers are in the input. Judges' names are kept secret.
The end of the input is indicated by a line with a single zero in it.
Output
For each dataset, a line containing a single decimal integer indicating the score for the corresponding performance should be output. No other characters should be on the output line.
Sample Input
3 1000 342 0 5 2 2 9 11 932 5 300 1000 0 200 400 8 353 242 402 274 283 132 402 523 0
Sample Output
342 7 300 326
题目意思:给你n个数,剔除一个最大,一个最小,求平均值;
#include <iostream>
#include <algorithm>
using namespace std;
int main(){
int n,a[105];
while (cin>>n){
if (n==0)
break;
int sum=0;
for (int i=0;i<n;i++){
cin>>a[i];
sum+=a[i];
}
sort(a,a+n);
sum=sum-a[0]-a[n-1];
cout<<sum/(n-2)<<endl;
}
return 0;
}
本文介绍了一种针对国际小丑及表演者竞赛(ICPC)的评分系统软件的设计与实现。该系统能够处理多位评委给出的分数,通过排除最高分和最低分后计算参赛者的平均得分。文章提供了一个具体的算法实现案例,包括输入处理、排序和计算最终得分的过程。

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



