当前位置:网站首页>成绩排序(华中科技大学考研机试题)(DAY 87)
成绩排序(华中科技大学考研机试题)(DAY 87)
2022-07-30 05:26:00 【张学恒】
1:题目
有 N 个学生的数据,将学生数据按成绩从低到高排序,如果成绩相同则按姓名字符的字典序排序,如果姓名的字典序也相同则按照学生的年龄从小到大排序,并输出 N 个学生排序后的信息。
输入格式
第一行有一个整数 N。
接下来的 N 行包括 N 个学生的数据。每个学生的数据包括姓名(长度不超过 100 的字符串)、年龄(小于等于 100 的正数)、成绩(小于等于 100 的正数)。
输出格式
将学生信息按成绩进行排序,成绩相同的则按姓名的字母序进行排序。
然后输出学生信息,按照如下格式:
姓名 年龄 成绩
学生姓名的字母序区分字母的大小写,如 A 要比 a 的字母序靠前(因为 A 的 ASCII 码比 a 的 ASCII 码要小)。
数据范围
1≤N≤1000
输入样例:
3
abc 20 99
bcd 19 97
bed 20 97
输出样例:
bcd 19 97
bed 20 97
abc 20 99
难度:简单
时/空限制:1s / 64MB
总通过数:904
总尝试数:1426
来源:华中科技大学考研机试题
算法标签
2:代码实现
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 1010;
int n;
struct Student
{
string name;
int age, score;
bool operator< (const Student& t) const
{
if (score != t.score) return score < t.score;
if (name != t.name) return name < t.name;
return age < t.age;
}
}q[N];
int main()
{
cin >> n;
for (int i = 0; i < n; i ++ )
cin >> q[i].name >> q[i].age >> q[i].score;
sort(q, q + n);
for (int i = 0; i < n; i ++ )
cout << q[i].name << ' ' << q[i].age << ' ' << q[i].score << endl;
return 0;
}
边栏推荐
- 参与开源,让程序员找回热血和激情
- idea设置自动带参数的方法注释(有效)
- ThinkPHP高仿蓝奏云网盘系统源码/对接易支付系统程序
- mysql cannot connect remotely Can't connect to MySQL server on 'xxx.xxx.xxx.xxx' (10060 "Unknown error")
- MySQL - 函数及约束命令
- MySQL如何对SQL做prepare预处理(解决IN查询SQL预处理仅能查询出一条记录的问题)
- leetcode hot 100(刷题篇11)(231/235/237/238/292/557/240/36)offer/3/4/5
- Within the SQL connection table (link connections, left or right, cross connection, full outer join)
- idea 编译protobuf 文件的设置使用
- An old programmer's summary review of 2020, how to become more awesome in 2021
猜你喜欢
pyinstaller打包程序所遇问题记录
最新版MySQL 8.0 的下载与安装(详细教程)
【Redis高手修炼之路】Jedis——Jedis的基本使用
ugly programmer
How MySQL to prepare SQL pretreatment (solve the query IN SQL pretreatment can only query out the problem of a record)
腾讯面试居然跟我扯了半小时的CountDownLatch
MySql字符串拆分实现split功能(字段分割转列、转行)
一文带你吃透js处理树状结构数据的增删改查
mysql基础(4)
Programmers make money and practice, teach you how to do paid courses, self-media, paid articles and paid technical courses to make money
随机推荐
mysql高阶语句(一)
力扣05-替换空格——字符串问题
An old programmer's summary review of 2020, how to become more awesome in 2021
五一去见了一些身价数千万的成功人士,我一些新的思路和启示
容器化 | 在 K8s 上部署 RadonDB MySQL Operator 和集群
最新版MySQL 8.0 的下载与安装(详细教程)
How can I make (a == 1 && a == 2 && a == 3) to be true?
ms project2010项目管理软件使用技巧总结
Us to raise interest rates by 75 basis points in "technical recession"?Encryption market is recovering
是时候不得不学英语了,技多不压身,给自己多条路
MySQL基础(DDL、DML、DQL)
2022 Pengcheng Cup web
The Golden Circle Rule: Deep Thinking Methods for Successful People
mysql基础(4)
无代码开发平台子管理员入门教程
工具 | 常用 PostgreSQL 预防数据丢失方案
Redis基础学习
mysql 中 in 的用法
golang八股文整理(持续搬运)
leetcode刷题