eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Классы

Классы

Лимит времени 1 секунда
Лимит использования памяти 128 MiB

В его мемуарах так или иначе... комик Джон Клиз пишет о классовой разнице между его отцом (который принадлежал классу "средний-средний-средний-нижний-средний") и его матерью (которая принадлежала классу "верхний-верхний-нижний-средний"). Эти тонкие различия между классами, как правило, вводят в заблуждение американских читателей, поэтому Вы должны написать программу сортировки группы людей по классам, чтобы показать истинные различия.

Существует три основных класса: верхний, средний и нижний. Очевидно, что высший класс является высшим, а нижний - самым низким. Но внутри класса могут быть различия, поэтому верхний-верхний класс более высокий, чем средний-верхний, который выше нижний-верхний. Тем не менее, все высшие классы (верхний-верхний, средний-верхний и нижний-верхний) выше, чем любой из средних классов.

Внутри такого класса, как средний-верхний, также могут быть и другие различия, ведущие к классам типа нижний-средний-верхний-средний-верхний. При сравнении классов, когда Вы достигаете самого низкого уровня детализации, то должны предположить, что все дальнейшие классы эквивалентны среднему уровню предыдущего уровня детализации. Таким образом, верхний класс и средний-верхний класс эквивалентны, как средний-средний-нижний-средний и нижний-средний.

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

Первая строка содержит количество имен n (1n1000), следующих далее. Каждая из следующих n строк содержит имя человека (последовательность из 1 или более букв 'a' - 'z' нижнего регистра), двоеточие, пробел и класс которому принадлежит человек. Класс человека будет включать один или несколько модификаторов, а затем слово class. Двоеточие, модификаторы и слово class будут отделены друг от друга одиночными пробелами. Все модификаторы имеют значения upper, middle или lower. Гарантируется, что входные данные корректны. Не существует даже двух людей с одинаковыми именами. Входные строки содержат не более 256 символов.

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

Выведие n имен, каждое в отдельной строке, от верхнего класса до нижнего. Если люди принадлежат одному и тому же классу, то выводить их следует в алфавитном порядке имен.

Пример

Входные данные #1
5
mom: upper upper lower middle class
dad: middle middle lower middle class
queenelizabeth: upper upper class
chair: lower lower class
unclebob: middle lower middle class
Выходные данные #1
queenelizabeth
mom
dad
unclebob
chair
Источник 2015 ACM North America - Pacific Northwest, Дивизион 1, Задача C