#CF1200E. Compress Words

Compress Words

Compress Words

  • 时间限制:1 秒
  • 内存限制:256 MiB

题目描述

Amugae 有一个由 nn 个单词组成的句子。他想把这个句子压缩成一个单词。

合并两个单词时,设第一个单词的某个后缀与第二个单词的同长度前缀相同。Amugae 会选择满足条件的最长部分,只保留一份重叠内容,再把第二个单词剩余的后缀接到第一个单词后面。例如,合并 sampleplease 会得到 samplease

他会从左到右依次合并:先合并前两个单词,再把结果与第三个单词合并,依此类推。请输出全部合并完成后的压缩单词。

输入格式

第一行包含一个整数 nn

第二行包含 nn 个由单个空格分隔的非空单词。

输出格式

输出一行,表示最终得到的压缩单词。

样例输入 1

5
I want to order pizza

样例输出 1

Iwantorderpizza

样例输入 2

5
sample please ease in out

样例输出 2

sampleaseinout

数据范围

对于所有数据,1n1051\le n\le 10^5。每个单词仅由大小写英文字母和数字组成,所有单词的长度之和不超过 10610^6

子任务编号 分值 特殊限制
1 30 每个单词的长度均为 11
2 所有单词的长度之和不超过 30003000
3 40 无特殊限制