#HK4864. 「PA 2025」Finaliści

「PA 2025」Finaliści

题目描述

题目译自 PA 2025 Runda 1 Finaliści

今年,你下定决心要闯进 PA 的决赛!在实现这个目标前,不妨先搞清楚决赛资格的具体规则。你翻开了比赛章程,找到了以下关键条款:

  • 在五轮远程选拔赛后,2020 名选手将晋级决赛。其中,前 1010 名来自 A+B+C 排行榜的第 111010 位;另外 1010 名是从剩余排名中挑选出的最高位选手,但不包括曾至少两次参加过算法对决决赛的人。
  • 只有具备以下条件之一的选手才能晋级决赛:拥有波兰国籍、在波兰居住,或在波兰学习、工作。
  • 为选出 2020 名决赛选手,首先从排行榜中剔除不符合资格或主动放弃的选手,然后从剩余选手中按上述规则挑选 2020 人。

你的朋友对所有选手了如指掌,他预测了今年的排名情况,给了你一份包含 nn 名选手的名单,编号从 11nn,按成绩从高到低排序(没有并列)。对于每位选手,你知道他们是否能且愿意参加决赛,以及他们之前参加决赛的次数。

请你根据规则,确定晋级决赛的 2020 名选手名单。你可以假设名单上选手数量足够,按规则选出完整的 2020 人。

输入格式

输入的第一行包含一个整数 nn (20n10000)(20 \leq n \leq 10000),表示排行榜中的选手总数。

接下来的 nn 行描述每位选手的信息,每行包含一个单词 ss 和一个整数 xx $(s \in \{\texttt{TAK}, \texttt{NIE}\}, 0 \leq x < 20)$。TAK\texttt{TAK} 表示选手能且愿意参加决赛,NIE\texttt{NIE} 表示不能或不愿参加,xx 表示该选手之前参加决赛的次数。

输出格式

输出一行,包含 2020 个按升序排列的整数,用单个空格分隔,表示晋级决赛的选手编号。

35
NIE 0
NIE 0
TAK 3
TAK 0
TAK 7
TAK 5
NIE 0
NIE 0
TAK 7
TAK 1
NIE 0
TAK 8
TAK 1
TAK 3
NIE 0
TAK 2
NIE 0
TAK 1
NIE 4
TAK 2
TAK 2
TAK 1
TAK 1
TAK 0
TAK 0
TAK 0
TAK 0
TAK 0
NIE 0
TAK 1
TAK 2
TAK 0
TAK 0
TAK 0
TAK 0

3 4 5 6 9 10 12 13 14 16 18 22 23 24 25 26 27 28 30 32

编号为 1,2,7,8,11,15,17,19,291, 2, 7, 8, 11, 15, 17, 19, 29 的选手因不能或不愿参加被剔除。剩余选手中,前 1010 名是:3,4,5,6,9,10,12,13,14,163, 4, 5, 6, 9, 10, 12, 13, 14, 16。接着,从剩余选手中剔除编号 20,21,3120, 21, 31(因决赛次数 2\geq 2),选出后 1010 名:18,22,23,24,25,26,27,28,30,3218, 22, 23, 24, 25, 26, 27, 28, 30, 32