#A. 比赛排名

    Type: FileIO (A) 1000ms 256MiB

比赛排名

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

有n位选手参加一场比赛,选手的编号分别为1,2,⋯,​n​,其中编号为i的选手姓名为si,并且在这场比赛中,他的得分为ai。

现在,有m次询问,对于每一次询问,小星想知道姓名以某一个字母结尾的所有选手中,评分第k大的选手的姓名。如果出现评分相同的选手,那么就输出编号最小的选手的姓名。

输入格式

第一行两个正整数​n​,​m​,分别表示选手人数和询问次数。

接下来n行,每行输入一个字符串si和整数ai,分别表示i号选手的姓名和得分,输入的顺序就是选手的编号顺序,并且保证∣​si​∣≤50,且都由小写字母组成。

接下来m行,每行输入一个字母x以及一个正整数​k​,表示询问所有名字以x字母结尾的选手中第k名选手的姓名(得分高的排名高)。

输出格式

共m行,每行一个字符串表示询问的答案。如果姓名以x字母结尾的选手不存在排名为k的,则输出Orz YYR tql。

样例 #1

样例输入 #1

5 2
aaa 1
aa 2
a 3
ab 3
bb 4
b 2
a 4​

样例输出 #1

ab
Orz YYR tql​

样例 #2

样例输入 #2

见附件​

样例输出 #2

见附件​

提示

【样例 1 解释】

对于询问1,以b结尾的选手的排名为"bb", "ab",所以输出第2名 "ab"。

对于询问2,以a结尾的选手的排名为"a", "aa", "aaa",没有第4名,直接输出"Orz YYR tql"。

【数据范围】

对于5%的数据​n​≤10,​m​≤1000。

对于20%的数据​n​,​m​≤1000。

对于所有数据​n​,​m​≤10​^5​,​k​≤​n​,保证名字长度小于等于50。

CSP-S复赛模拟2

Not Attended
Status
Done
Rule
IOI
Problem
4
Start at
2025-10-19 13:00
End at
2025-10-27 21:00
Duration
200 hour(s)
Host
Partic.
8