#4764. 病人排队
病人排队
病人排队
题目描述
病人登记看病,编写一个程序,将登记的病人按照以下原则排出看病的先后顺序:
- 老年人(年龄 ≥ 60 岁)比非老年人优先看病。
- 老年人按年龄从大到小的顺序看病,年龄相同的按登记的先后顺序排序。
- 非老年人按登记的先后顺序看病。
输入格式
第 1 行,输入一个小于 100 的正整数,表示病人的个数;
接下来若干行,按照病人登记的先后顺序(登记需要从 1 开始),输入每一个病人的信息,每个病人包括:一个长度小于 10 的字符串表示病人的 ID(每个病人的 ID 各不相同且只含数字和字母),一个整数表示病人的年龄,ID 和年龄之间用单个空格隔开,并且每个病人的信息占一行。
输出格式
按规则排序后的病人 ID,每行一个。
样例输入 #1
5
021075 40
004003 15
010158 67
021033 75
102012 30
样例输出 #1
021033
010158
021075
004003
102012
数据范围
病人个数 ,ID 长度 ,年龄为整数。
知识点与难度
本题涉及的知识点从属于 GESP四级(结构体、自定义排序),难度等级:⭐⭐⭐。
测试点分布
| Subtask | 分值 | 测试点编号 | 说明 |
|---|---|---|---|
| 0 | 10 | 1~2 | 样例 |
| 1 | 20 | 3~8 | 小规模 / 特殊性质 |
| 2 | 15 | 9~11 | Hack |
| 3 | 30 | 12~20 | 中大规模 |
| 4 | 25 | 21~25 | 随机回归 |