#4783. 学生的名次3

学生的名次3

题目描述

现有 nn 个学生,每个学生包含三个信息:学号、姓名和成绩。所有学生的学号各不相同。请按照指定规则对这些学生进行排序,然后按照学生的原始输入顺序,输出每个学生在排序后的名次。

排序规则如下:

  1. 首先按照成绩从高到低排序;
  2. 若成绩相同,则按照学号从小到大排序。

名次确定规则:

  • 排序后成绩最高的学生为第 11 名;
  • 若多个学生成绩相同且排序相邻,则他们获得相同的名次;
  • 后续学生的名次为上一名次加 11(例如:若前两名成绩相同且为第 11 名,则接下来的学生为第 22 名)。

输入格式

第一行一个整数 nn,表示学生的数量。
接下来 nn 行,每行包含学号(整数)、姓名(字符串,不含空格)、成绩(整数),用空格分隔。

输出格式

输出共 nn 行,每行一个整数,表示对应学生在排序后的名次。输出顺序与输入时的学生顺序保持一致。

样例

3
1001 Zhang 90
1003 Wang 85
1002 Li 90
1
2
1

样例说明
排序后的学生顺序为:

  • 11 名:1001 Zhang 90
  • 11 名:1002 Li 90(成绩相同,名次并列)
  • 22 名:1003 Wang 85

按照输入顺序,三个学生的名次分别为 11(1001)、22(1003)、11(1002)。

数据范围

  • 1n10001 \le n \le 1000
  • 学号为 1100001 \sim 10000 之间的整数,且各不相同
  • 姓名为长度不超过 2020 的字符串,不含空格
  • 成绩为 01000 \sim 100 之间的整数