#2153. 排队
排队
题目描述
在很多场合,我们都需要排队,比如超市付款,医院看病,就餐等等。“尊老爱幼”是中华名族的传统美德,所以在排队的过程中,遇到老人、幼儿我们应该主动让他们排在前面。请按以下 条规则编写一个排队的程序。
- 老人(年龄 ≥ 岁)和幼儿(年龄 ≤ 岁)比其他人( 岁 < 年龄 < 岁)优先排在队伍的前面,且所有幼儿排在所有老人的前面。
- 老人按年龄从大到小的顺序排队,年龄大的优先,年龄相同时,先到的人排在前面。
- 幼儿按年龄从小到大的顺序排队,年龄小的优先,年龄相同时,先到的人排在前面。
- 其他人只按到达的先后顺序排队**。**
输入格式
输入共 行。
第 行一个整数 ,表示排队的总人数。
第 行到第 行,按照到达的先后顺序给出了每个人的基本信息。每行两个整数,第一个整数表示这个人的编号(编号保证不会重复,但不保证连续),第二个整数表示这个人的年龄。
输出格式
输出共 行。
每行一个人的编号,表示从前往后的排队结果。
8
1 14
3 6
4 5
5 62
11 48
17 25
21 60
13 62
4
3
5
13
21
1
11
17
样例解释
共有 个人参加排队。编号为 和 的两个人为幼儿,年龄分别为 岁和 岁。编号为 、 和 的三个人为老人,年龄分别为 岁、 岁和 岁。
根据排队规则,老人和幼儿排在其他人的前面,而幼儿又排在老人的前面,所以先排编号 和 的幼儿。幼儿按年龄从小到大的顺序排队,所以第一个人是 号,然后是 号。接下来排老人,老人年龄大的先排,所以先排 号和 号,但 号比 号先到,所以先排 号,然后 号,接下来 号。剩下的人不论年龄大小,全部按到达的顺序排队,依次为 号、 号和 号。
数据范围
的测试点输入数据保证 ,且每个人的年龄都不相同。
的测试点输入数据保证 。
的测试点输入数据保证 , ≤人的编号≤,≤人的年龄≤。