Time Limit: 1 second

Memory Limit: 128 MB

【问题描述】

华南师大附中月考二已经结束,级长想知道最高分是谁。但是现在级长很忙,没有时间统计成绩,于是他找到了你,你能帮帮他吗?

【输入格式】

第一行是一个正整数n

接下来是n行,每行为一个同学的成绩,格式如下:

先是一个字符串,表示这个同学的名字(长度小于等于20,由大小写字母构成),然后是他的4位学号(数据保证是4位,但是可能以

0开头),接下来是4个数,分别表示他的语文、数学、英语、综合成绩(这个数在0到150之间,一定是0.5的倍数),最后是一

个字符串和一个数(这个数在0到150之间,一定是0.5的倍数),字符串表示他的X科(一定是physics、chemistry、biology中

的一个),那个数为他这科的成绩。以上的数据都由一个空格隔开,末尾没有多余的空格。具体请看样例。

【输出格式】

输出文件一共3行,分别表示选考physics、chemistry、biology中总分最高的同学。每行的输出格式为:

先是一个字符串,表示这个同学的名字,然后是他的4位学号,最后是他的总分。如果总分相同,则输出4位学号最小的。数据保证4

位学号互不相同。以上的数据都由一个空格隔开,末尾没有多余的空格。具体请看样例。 【限制】

100%的数据满足:3<=n<=600

数据保证每科至少有一个同学的成绩。

【注意】

所有的分数应以最简形式输出(例如不要将750输出为750.0)。

输入数据保证所有的分数都为最简形式。

Sample Input

5

apple 0101 150 150 150 150 physics 150

egg 0202 140 130.5 130 150 chemistry 150

banana 0102 130 140 130.5 150 chemistry 150

cat 0103 100.5 100 100 100 biology 100

dog 0288 89.5 89.5 89.5 89.5 physics 91.5

Sample Output

apple 0101 750

banana 0102 700.5

cat 0103 500.5

【题目链接】:http://noi.qz5z.com/viewtask.asp?id=t055

【题解】



把每个人的成绩分类一下就好;

分为物理,化学,生物三类;

然后记录它们的总分,学号,名字就好;

用个map+vector来存;

自己写一个比较函数排下序然后输出每组的第一个就好;



【完整代码】

#include <cstdio>
#include <algorithm>
#include <vector>
#include <iostream>
#include <string>
#include <map> using namespace std; struct abc
{
double zongfen;
string name,xuehao;
friend bool operator < (abc a,abc b)
{
if (a.zongfen != b.zongfen)
return a.zongfen > b.zongfen;
else
return a.xuehao < b.xuehao;
}
}; map <string,vector<abc> > dic; int main()
{
//freopen("F:\\rush.txt","r",stdin);
int n;
scanf("%d",&n);
for (int i = 1;i <= n;i++)
{
abc temp;
double x,y,z,k,l;
string lei;
cin >> temp.name >> temp.xuehao >> x >> y >> z >> k >> lei >> l;
temp.zongfen = x+y+z+k+l;
dic[lei].push_back(temp);
}
sort(dic["physics"].begin(),dic["physics"].end());
sort(dic["chemistry"].begin(),dic["chemistry"].end());
sort(dic["biology"].begin(),dic["biology"].end());
cout << dic["physics"][0].name <<' '<<dic["physics"][0].xuehao<<' '<<dic["physics"][0].zongfen<<endl;
cout << dic["chemistry"][0].name <<' '<<dic["chemistry"][0].xuehao<<' '<<dic["chemistry"][0].zongfen<<endl;
cout << dic["biology"][0].name <<' '<<dic["biology"][0].xuehao<<' '<<dic["biology"][0].zongfen<<endl;
return 0;
}

【t055】成绩统计的更多相关文章

  1. 2016福州大学软件工程第二次团队作业——预则立&&他山之石成绩统计

    第二次团队作业--预则立&&他山之石成绩统计结果如下: T:团队成绩 P:个人贡献比 T+P:折算个人成绩,计算公式为T+T/15*团队人数*P 学号 组别 Team P T+P 03 ...

  2. sdut 3-5 学生成绩统计

    3-5 学生成绩统计 Time Limit: 1000MS Memory limit: 65536K 题目描写叙述 通过本题目练习能够掌握对象数组的使用方法,主要是对象数组中数据的输入输出操作. 设计 ...

  3. (注意输入格式)bistuoj(旧)1237 成绩统计

    成绩统计 Time Limit(Common/Java):1000MS/3000MS          Memory Limit:65536KByteTotal Submit:88          ...

  4. 成绩统计程序(Java)

    我的程序: package day20181018;/** * 成绩统计系统 * @author Administrator */import java.util.Scanner;//提供计算机直接扫 ...

  5. 体育成绩统计——20180801模拟赛T3

    体育成绩统计 / Score 题目描述 正所谓“无体育,不清华”.为了更好地督促同学们进行体育锻炼,更加科学地对同学们进行评价,五道口体校的老师们在体育成绩的考核上可谓是煞费苦心.然而每到学期期末时, ...

  6. YTU 2798: 复仇者联盟之数组成绩统计

    2798: 复仇者联盟之数组成绩统计 时间限制: 1 Sec  内存限制: 128 MB 提交: 136  解决: 96 题目描述 定义一个5行3列的二维数组,各行分别代表一名学生的高数.英语.C++ ...

  7. YTU 2769: 结构体--成绩统计

    2769: 结构体--成绩统计 时间限制: 1 Sec  内存限制: 128 MB 提交: 1021  解决: 530 题目描述 建立一个简单的学生信息表,包括:姓名.性别.年龄及一门课程的成绩,统计 ...

  8. 【Java例题】7.5 文件题2-学生成绩统计

    5.学生成绩统计.已有一个学生成绩文件,含有多位学生的各三门课的成绩:读取这个文件中的每位学生的三门课成绩,然后计算均分:最后对这些均分按照大于或小于75分的界限,分别写到另两个文件中. packag ...

  9. 学生各门课程成绩统计SQL语句大全

    学生成绩表(stuscore): 姓名:name 课程:subject 分数:score 学号:stuid 张三 数学 89 1 张三 语文 80 1 张三 英语 70 1 李四 数学 90 2 李四 ...

随机推荐

  1. springMVC通过ajax传递参数list对象或传递数组对象到后台

    springMVC通过ajax传递参数list对象或传递数组对象到后台 环境: 前台传递参数到后台 前台使用ajax 后台使用springMVC 传递的参数是N多个对象 JSON对象和JSON字符串 ...

  2. 背景剪除和OpenCV中的实现

    转载请注明出处! ! ! http://blog.csdn.net/zhonghuan1992 背景剪除和OpenCV中的实现 背景与前景都是相对的概念.以快速公路为例:有时我们对快速公路上来来往往的 ...

  3. 关于CSDN2013博客之星的一些看法

    最近一个周,最火的话题当然要数CSDN2013博客之星拉票了. 实话实说,从12月14日开始,我连续5天拉票. 通过QQ群.QQ好友.CSDN文章.给CSDN粉丝发私信等多种方式拉票,真是累死我了. ...

  4. Linux学习总结(4)——Centos6.5使用yum安装mysql——快速上手必备

    第1步.yum安装mysql [root@stonex ~]#  yum -y install mysql-server 安装结果: Installed:     mysql-server.x86_6 ...

  5. WebService学习总结(5)——WebService常见开发框架比较

    在SOA领域,我们认为Web Service是SOA体系的构建单元(building block).对于服务开发人员来说,AXIS和CXF一定都不会陌生.这两个产品都是Apache孵化器下面的Web ...

  6. 【z07】机器翻译

    [题目链接]:http://noi.qz5z.com/viewtask.asp?id=z07 [题解] 可以理解为一直往一个队列里面加东西: 然后每次查找一个东西在不在队列的最尾部长度为m的区间范围内 ...

  7. AE中Identify查询工具的实现

    原文 AE中Identify查询工具的实现 主要实现点击查询并闪烁显示,并把查询要素的信息通过DataGridView显示出来,主要用到的接口: IIdentity.IArray.IIdentifyO ...

  8. swift开发网络篇—利用NSURLSession 发送GET和POST请求

    说明:本文示例代码发送的请求均为http请求,需要对info.plist文件进行配置.如何配置,请参考https://github.com/HanGangAndHanMeimei/iOS9Adapta ...

  9. MHA 一主两从搭建-keepalived-手动切换

    环境介绍:主机名 IP MHA角色 MySQL角色node1 192.168.56.26 Node MySQL Master node2 192.168.56.27 Node MySQL Master ...

  10. Unreal Enginer4特性介绍-牛B闪闪的UE4

    声明:转载说明出处! unreal4特性介 原文地址:   https://www.unrealengine.com/products/unreal-engine-4     unreal engin ...