QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 1024 MB Total points: 10

#10235. Финалисты [C]

统计

В этом году вы наконец решили попасть в финал Potyczki! Прежде чем это сделать, стоит узнать, каковы точные правила квалификации в финал. В регламенте конкурса вы нашли следующие пункты:

  • После пяти дистанционных раундов в финал конкурса будут отобраны 20 участников. Десять из них — это участники, занявшие места с 1 по 10 в рейтинговом списке A+B+C. Следующие десять — это участники с наивысшими результатами из числа оставшихся, за исключением тех, кто участвовал в финале Potyczki Algorytmiczne не менее двух раз.
  • В финал могут быть отобраны только те участники, которые являются гражданами Польши, либо являются резидентами Польши, либо учатся, изучают или работают в Польше.
  • Для определения 20 участников, прошедших в финал, сначала из рейтинга удаляются участники, которые не могут квалифицироваться, а также те, кто отказывается от участия. Затем из числа оставшихся участников выбираются 20 финалистов в соответствии с правилами, описанными выше.

Ваш коллега очень хорошо знает всех участников и предсказал, как будет выглядеть рейтинг в этом году. Он дал вам список из $n$ участников, пронумерованных числами от 1 до $n$ в порядке убывания результатов (в списке вашего коллеги нет ничьих). Для каждого участника вы знаете, может ли он и хочет ли участвовать в финале, а также сколько раз он участвовал в финале ранее.

Определите список из 20 участников, которые будут квалифицированы в финал в соответствии с регламентом.

Вы можете предположить, что в списке достаточно участников, чтобы заполнить все 20 мест в соответствии с регламентом.

Входные данные

Первая строка содержит целое число $n$ ($20 \le n \le 10\,000$), обозначающее количество участников в рейтинге Potyczki.

Следующие $n$ строк содержат информацию о каждом участнике. Каждая из них содержит слово $s$ и целое число $x$ ($s \in \{\text{TAK}, \text{NIE}\}$, $0 \le x < 20$). Слово TAK означает, что участник может и хочет участвовать в финале, слово NIE означает, что участник не может или не хочет участвовать в финале. Число $x$ означает количество предыдущих участий данного участника в финале.

Выходные данные

Выведите одну строку, содержащую 20 целых чисел, разделенных одиночными пробелами, обозначающих номера участников, прошедших в финал Potyczki, в порядке возрастания.

Примеры

Пример 1

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, 29 пропускаются, так как они не могут/не хотят участвовать в финале. Десять лучших участников среди оставшихся имеют номера 3, 4, 5, 6, 9, 10, 12, 13, 14, 16. Затем, пропуская участников под номерами 20, 21 и 31, так как они уже были в финале как минимум дважды, мы получаем вторую десятку финалистов с номерами: 18, 22, 23*, 24, 25, 26, 27, 28, 30, 32.

*Ваш коллега предсказывает, что участник номер 23 выиграет финал!

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.