Codeforces Round 401 (Div. 2) |
---|
Закончено |
Вася ведёт публичную страницу организации «Мышь и клавиатура», где постоянно публикует различные новости из мира спортивного программирования. Для удобства поиска по новостям Вася прикрепляет к каждой из них список хештегов. В данной задаче хештегом называется строка, состоящая из маленьких букв английского алфавита и ровно одного символа '#', расположенного в начале строки. Длиной хештега будем называть количество символов в нём, без учёта символа '#'.
Начальство Васи распорядилось, что хештеги у каждой новости должны быть расположены в лексикографическом порядке (для пояснения смотрите примечания).
Поскольку Васе не хочется менять порядок хештегов в уже написанной новости, он решил удалить у некоторых хештегов некоторый суффикс (какое-то количество последних символов), при этом можно даже удалить весь текст хештега, оставив только символ '#', но сам символ '#' удалять нельзя. Из всех возможных вариантов такого удаления Вася хочет выбрать тот, в котором суммарно будет удалено минимальное количество символов. Если и таких вариантов несколько, то разрешается использовать любой из них.
В первой строке находится одно число n (1 ≤ n ≤ 500 000) — количество хештегов в новости.
Каждая из следующих n строк содержит ровно один хештег положительной длины.
Гарантируется, что суммарная длина всех хештегов (то есть всех строк, без учёта символа '#') не превосходит 500 000.
Выведите полученные после удаления символов хештеги.
3
#book
#bigtown
#big
#b
#big
#big
3
#book
#cool
#cold
#book
#co
#cold
4
#car
#cart
#art
#at
#
#
#art
#at
3
#apple
#apple
#fruit
#apple
#apple
#fruit
Слово a1, a2, ..., am длины m лексикографически не превосходит слова b1, b2, ..., bk длины k, если выполняется одно из двух:
Про последовательность слов говорят, что они идут в лексикографическом порядке, если каждое слово в нём (кроме последнего) лексикографически не превосходит следующего за ним.
Для слов, состоящих из маленьких латинских букв, лексикографический порядок совпадает с алфавитным порядком расположения слов в словаре.
Хештег, состоящий только из символа '#', лексикографически не больше любого другого хештега. Поэтому в третьем примере мы не можем оставить два первых слова и сократить два вторых.
Название |
---|