【PAT】 1004成绩排名

1004. 成绩排名 (20)

时间限制

400 ms

内存限制

65536 kB

代码长度限制

8000 B

判题程序

Standard

作者

CHEN, Yue

读入n名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。

输入格式:每个测试输入包含1个测试用例,格式为

  第1行:正整数n
  第2行:第1个学生的姓名 学号 成绩
  第3行:第2个学生的姓名 学号 成绩
  ... ... ...
  第n+1行:第n个学生的姓名 学号 成绩

其中姓名和学号均为不超过10个字符的字符串,成绩为0到100之间的一个整数,这里保证在一组测试用例中没有两个学生的成绩是相同的。

输出格式:对每个测试用例输出2行,第1行是成绩最高学生的姓名和学号,第2行是成绩最低学生的姓名和学号,字符串间有1空格。

输入样例:

3
Joe Math990112 89
Mike CS991301 100
Mary EE990830 95

输出样例:

Mike CS991301
Joe Math990112
#include<iostream>
#include<vector>
#include <algorithm>
#include <string>
using namespace std;

typedef struct  student
{

	string  name;
	string  number;
	int grade;
}STU;

bool  compare(STU a,STU b)
{
	return  a.grade<=b.grade;
}

int main()
{
	int n;
	cin>>n;
	STU stu;
	vector<STU> vec;
	vector<STU>::iterator it;
	while(n--)
	{
		cin>>stu.name>>stu.number>>stu.grade;
	    vec.push_back(stu);
	}

	sort(vec.begin(),vec.end(),compare);

	cout<<(*vec.rbegin()).name<<" "<<(*vec.rbegin()).number<<endl;
	cout<<(*vec.begin()).name<<" "<<(*vec.begin()).number<<endl;

	return 0;
}

思路:刷OJ还是C++好用写,效率高,尤其是用STL。题目很简单是简单的结构体元素排序,使用STL的vector 和algorithm很快,用sort()排序然后用vector的rbegin返回逆迭代即就是最大值,用begin返回最小值,就完美的解决了。

时间: 2024-11-08 22:33:32

【PAT】 1004成绩排名的相关文章

excel成绩排名RANK函数讲解和常见的excel成绩排名案例

  本文介绍excel成绩排名的常用RANK函数讲解,并整理了其余的excel成绩排名案例. 我们经常使用excel做成绩排名,如下面的成绩排名表格非常常见,求各位学员的成绩排名.本例使用到的是一个excel排名函数RANK函数. 我们只需要在E2单元格输入公式:=RANK(D2,$D$2:$D$11),然后下拉即可算出所有学生的成绩排名情况.

mysql语句当天个人按成绩排名,要查询快,不消耗太多资源的。

问题描述 mysql语句当天个人按成绩排名,要查询快,不消耗太多资源的. ID UID NAME S O TIME 1 1001 p1 12 22 2015-1-21 2 1002 p2 13 32 2015-1-21 3 1001 p1 13 12 2015-1-22 4 1002 p2 11 32 2015-1-22 5 1001 p1 19 12 2015-1-23 6 1002 p2 11 13 2015-1-23 ....................................

智学网APP年级成绩排名查看教程

给各位智学网软件的使用者们来详细的解析分享一下年级成绩排名查看的教程. 教程分享: 1.打开智学网app,进入登录界面,在登录界面中的账号与密码上均输入你的准考证号,然后点击登录;   2.填写你的真实姓名进行验认; 3.完成验证成功后,可能会让你修改初始密码,这个你随便; 4.然后点击成绩查询,就可以看到有关成绩的信息和排名.   好了,以上的信息就是小编给各位智学网的这一款软件的使用者们带来的详细的年级成绩排名查看的教程解析分享的全部内容了,各位看到这里的软件使用者们,小编相信大家现在那是非

360杀毒获得AV-TEST认证 成绩排名国产第一

日前,国际知名反病毒评测机构http://www.aliyun.com/zixun/aggregation/33786.html">AV-TEST发布2012年最后一期测试报告,360杀毒以14.5的综合得分.全年100%的通过率顺利获得通过认证.此次测试,360杀毒成绩再次排名世界一流行列,并在参测国产安全软件中保持领先地位. 图:360杀毒4.0通过AV-TEST国际评测认证 此次AV-TEST测试是360杀毒4.0版推出后的国际评测"首秀".凭借自主研发的第二代Q

Sql Server、Access数据排名的实现方法(例如:成绩排名)_数据库其它

但是,在SQL SERVER 2005 之前,SQL SERVER 2000 并没有提供这个直接的函数供我们使用,同样 ACCESS 也是如此. 下面我们分2种情况,来写出数据排名的实现过程.测试数据如下: 排名后的结果如下: Access 复制代码 代码如下: select name, score, (select iif(isnull(sum(1)), 1, sum(1) + 1) from score_rank where score > a.score) as rank from sco

巧用Excel公式统计和分析学生考试成绩

期末考试完毕,教师需要统计分析学生的成绩,例如计算本班学生名次.本年级学生名次.单项成绩排名等.借助Excel公式,我们就可以在很短时间内搞定这一切! 基础分析:学生成绩排名 了解每个学生的学习成果 新建一个工作簿,将它命名为"2010-2011学年第一学期三年级期末考试成绩分析表",在其中新建一个"学生成绩明细表",输入参加考试的学生的成绩.这个过程只有手动输入,没有捷径可走. 在此工作表的K2.L2.M2中输入总计.班级排名.年级排名,再在K3. L3.M3单元

平常心对待Alexa排名

alexa|排名 近来,Alexa排名搞得中国互联网浮躁异常.众多中国站点排名一会儿蹿得高高的,一会儿又集体跳水,好像都是在玩"蹦极".Alexa对此变化的解释是:"有人作弊!统统记作零分." 凭感觉,Alexa好像是在学校里把持着生杀予夺大权的主考官,而中国互联网同仁则是考场惶恐不安的考生.为了获得高分,挤过独木桥,考生们冥思苦想,绞尽脑汁,有"特别聪明"的针对考题和考核制度的漏洞别出心裁地交了份答卷,一次考试过后,得个高分,也便可顺理成章地向

Excel统计成绩时的四个难题及解决

一.前言 对于教师而言,经常需要用Excel进行学生成绩统计,会被一些常见问题难住.碰到的难题主要有:如何统计不同分数段人数.如何在保持学号不变前提下进行排名.如何将百分制转换成不同分数段与如何用红色显示不及格的分数等,本文着重对这些问题的解决方法与技巧加以分析和讨论. 本文假设读者已对Excel的基本操作已经有一定基础,已经掌握如何进行求和.求平均和如何使用自动填充柄进行复制公式等操作,本文对这些一般性操作不做详细介绍,仅对一些难度较大的操作技巧进行讨论. 二.Excel统计学生成绩时的四个难

wps表格怎样制作成绩表

  wps表格制作成绩表的方法: 首先建立一个表格框架,录入表格名称,各项名称,然后填入内容 将文字居中时移至方格出现白十字点击右键,点击如图符号,再选择水平居中,就成功居中了, 录入班级时一个一个输入居中太慢,先输入一格,鼠标移至黑框右下角变成黑十字,同时按住ctrl下拉,录入考号时输入开始考号,如:1 直接下拉, 随便录入了些人和分数,然后就是求总分了,总分需要用到求和,以前需要录入复杂函数,现在只需点击开始,在右边点击求和,选择求和,就会出现下图中的函数,(注:在点求和之前,鼠标点击方格出