Таблица олимпиады
Время: 1 s · Память: 256 MB
- Сортировка
Условие
В олимпиаде участвуют команд с номерами от до . Задачи пронумерованы от до . Каждая посылка записана четырьмя значениями: команда, задача, время (в минутах) и вердикт — C (верно) или I (неверно).
Задача считается решённой командой при первом C; последующие посылки по этой задаче не учитываются. Штраф за решённую задачу = время первого C + минут за каждый I до него. Посылки I по нерешённой задаче штрафа не дают.
Постройте таблицу команд, сделавших хотя бы одну посылку: по убыванию числа решённых задач, при равенстве — по возрастанию суммарного штрафа, затем — по возрастанию номера команды.
Формат ввода
В первой строке и (, ). В следующих строках посылки в порядке неубывания времени: номер команды, номер задачи (–), время (–) и буква C или I.
Формат вывода
Для каждой команды отдельная строка: номер команды, число решённых задач и суммарный штраф.
Примеры
Ввод
4 6 1 2 10 I 3 1 11 C 1 2 19 C 1 2 21 C 1 1 25 C 2 5 40 I
Вывод
1 2 64 3 1 11 2 0 0
Примечание
Для каждой пары команда–задача храните два значения: решена ли задача и сколько было I. После чтения всех посылок отсортируйте команды по трём ключам.
В примере команда 1 решила задачу 2 на 19-й минуте после одного I: , задачу 1 — на 25-й: итого . Посылка C на 21-й минуте не учитывается. Команда 2 ничего не решила, но посылала, поэтому есть строка 2 0 0; команда 4 не посылала — её нет в таблице.
Источник: UVa 10258.
