Codeforces Round 578 (Div. 2) |
---|
Закончено |
У Амуга есть предложение, состоящее из $$$n$$$ слов. Он хочет склеить это предложение в одно слово. Амуга не любит повторений, поэтому, когда он склеивает два слова в одно, он удаляет самый длинный префикс второго слова, который совпадает с суффиксом первого слова. Например, слова «sample» и «please» он склеивает в «samplease».
Амуга хочет склеить предложение слева направо (т.е. сначала склеить первые два слова, потом склеить результат с третьим, и так далее). Напишите программу, которая найдет полученное после всех склеиваний слово.
Первая строка содержит одно целое число $$$n$$$ ($$$1 \le n \le 10^5$$$) — количество слов в предложении Амуга.
Вторая строка содержит $$$n$$$ слов, разделенных единичными пробелами. Каждое слово непусто и состоит из строчных и заглавных латинских букв, а также цифр ('A', 'B', ..., 'Z', 'a', 'b', ..., 'z', '0', '1', ..., '9'). Суммарная длина слов не превосходит $$$10^6$$$.
Выведите результат после всех склеиваний.
5 I want to order pizza
Iwantorderpizza
5 sample please ease in out
sampleaseinout
Название |
---|