HDU2014 青年歌手大奖赛_评委会打分入门
Posted 海岛Blog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU2014 青年歌手大奖赛_评委会打分入门相关的知识,希望对你有一定的参考价值。
青年歌手大奖赛_评委会打分
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 162907 Accepted Submission(s): 79614
Problem Description
青年歌手大奖赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分。
Input
输入数据有多组,每组占一行,每行的第一个数是n(2<n<=100),表示评委的人数,然后是n个评委的打分。
Output
对于每组输入数据,输出选手的得分,结果保留2位小数,每组输出占一行。
Sample Input
3 99 98 97
4 100 99 98 97
Sample Output
98.00
98.50
Author
lcy
Source
C语言程序设计练习(三)
问题链接:HDU2014 青年歌手大奖赛_评委会打分
问题简述:(略)
问题分析:
按Markdown格式重写了题解,旧版题解参见参考链接。
这个题没有必要用数组来存储读入的数据,读入数据流中的数据进行计算处理就可以了。
OJ做题,浮点数的话,计算用double类型,输出按"%f"格式。
求和、求最大值和求最小值都是套路,套路需要玩得很熟才行。
程序说明:(略)
参考链接:HDU2014 青年歌手大奖赛_评委会打分【入门】
题记:(略)
AC的C语言程序如下:
/* HDU2014 青年歌手大奖赛_评委会打分 */
#include <stdio.h>
int main(void)
{
int n;
while (scanf("%d", &n) != EOF) {
/* 定义变量并且初始化 */
int score, sum = 0, maxs = 0, mins = 1000, i;
/* 读入n个分数,并且求和、算最大值和最小值 */
for (i = 1; i <= n; i++) {
scanf("%d", &score);
sum += score;
maxs = (score > maxs) ? score : maxs;
mins = (score < mins) ? score : mins;
}
/* 输出结果 */
printf("%.2f\\n", (double)(sum - maxs - mins) / (n -2));
}
return 0;
}
以上是关于HDU2014 青年歌手大奖赛_评委会打分入门的主要内容,如果未能解决你的问题,请参考以下文章