#P2078. 姓名排序

姓名排序

题目描述

班级有 nn 个同学,需从键盘读入每个同学的学号和姓名,按以下规则排序:

  1. 按姓名长度降序排列;
  2. 若姓名长度相同,按姓名字典码降序排列;
  3. 若姓名长度和字典码均相同,按学号降序排列。

注:不存在两个同学学号相同,确保排序结果唯一。

输入格式

第一行输入一个整数 nn,表示同学的数量。

接下来 nn 行,每行先输入一个整数(学号),再输入一个不带空格的字符串(姓名),用空格隔开。

输出格式

输出 nn 行,为按规则排序后的结果,每行输出一个同学的学号和姓名,用空格隔开。

样例

5
1 zhangsan
2 lisi
4 wanger
5 wanger
3 zhaowu
1 zhangsan
3 zhaowu
5 wanger
4 wanger
2 lisi

数据范围

  • n100n \le 100
  • 学号 1000\le 1000,且所有学号唯一
  • 姓名为不带空格的字符串