CFCF2180B.Ashmal

普及-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

你有一个由 nn 个字符串 a1,a2,,ana_1, a_2, \ldots, a_n 组成的数组 aa,每个字符串均仅包含小写英文字母,并且有一个空字符串 ss

在第 ii 步(1in1 \le i \le n)时,你可以选择以下两种操作之一:

  • aia_i 添加到 ss 的开头,或者
  • aia_i 添加到 ss 的末尾。

例如,如果在第 ii 步之前 s=abas = \mathtt{aba}ai=bbaa_i = \mathtt{bba},则第 ii 步后 ss 可能为 ababba\mathtt{ababba}bbaaba\mathtt{bbaaba}

你需要求出在经过 nn 步操作后,可以得到的字典序最小的字符串 ss

如果两个长度相同的字符串 aabb,第一个不同的位置处,aa 的字母比 bb 的字母在字母表中更靠前,则称 aa 的字典序小于 bb

输入格式

每个测试点包含多组测试数据。第一行为测试用例数 tt1t5001 \le t \le 500)。接下来的每组测试数据描述如下:

第一行为一个整数 nn1n10001 \le n \le 1000)——数组 aa 的大小。第二行为 nn 个字符串 a1,a2,,ana_1, a_2, \ldots, a_n1ai40001 \le |a_i| \le 4000),每个字符串由小写英文字母组成。

保证所有测试用例中 nn 之和不超过 10001000,输入中所有字符串的总长度不超过 40004000

输出格式

对于每组测试数据,输出经过 nn 步操作后可以得到的字典序最小的字符串 ss

输入输出样例

  • 输入#1

    3
    4
    amir rima amin nima
    1
    codeforces
    3
    a ab abc
    

    输出#1

    aminamirrimanima
    codeforces
    aababc
    

说明/提示

以第一个测试用例为例,构造字典序最小字符串 ss 的一种可能方式如下:

  1. 第一步,无论加到开头还是末尾,s=amirs = \mathtt{amir},因为初始时 ss 为空。
  2. 第二步,将 a2=rimaa_2 = \mathtt{rima} 加到 ss 的末尾,此时 s=amirrimas = \mathtt{amirrima}
  3. 第三步,将 a3=amina_3 = \mathtt{amin} 加到 ss 的开头,此时 s=aminamirrimas = \mathtt{aminamirrima}
  4. 最后一步,将 a4=nimaa_4 = \mathtt{nima} 加到末尾,所以最终 s=aminamirrimanimas = \mathtt{aminamirrimanima}

可以证明,这个结果是可以获得的字典序最小的字符串。

首页