#abc042b. [abc042_b]Iroha Loves Strings (ABC Edition)

[abc042_b]Iroha Loves Strings (ABC Edition)

問題文

いろはちゃんは 長さ LL の文字列を NN 個持っており、それぞれ S1,S2,...,SNS_1, S_2, ..., S_N です。

それらの文字列を好きな順番で全て結合してできる文字列のうち、もっとも辞書順で小さいものを求めてください。

なお、ある文字列 s=s1s2s3s=s_1s_2s_3...sns_nt=t1t2t3t=t_1t_2t_3...tmt_m について、以下のどちらかを満たすとき、辞書順比較で s<ts<t であるといいます。

  • ある整数 i(1imin(n,m))i(1≦i≦min(n,m)) に関して、 1j<i1≦j<i を満たす任意の整数 jj において sj=tjs_j = t_j が成立し、かつ si<tis_i<t_i が成立する。
  • 任意の整数 i(1imin(n,m))i(1≦i≦min(n,m)) に関して si=tis_i = t_i が成立し、かつ n<mn<m が成立する。

制約

  • 1N,L1001 ≦ N, L ≦ 100
  • 全ての i(1iN)i (1≦i≦N) に対し、SiS_i の長さは LL に等しい。
  • ii について, SiS_i は全て半角英小文字のみから成る文字列である。

入力

入力は以下の形式で標準入力から与えられる。

NN LL S1S_1 S2S_2 : SNS_N

出力

与えられる文字列を好きな順番で全て結合してできる文字列のうち、もっとも辞書順で小さいものを出力せよ。


入力例 1

3 3
dxx
axx
cxx

出力例 1

axxcxxdxx

与えられた文字列を axx,cxx,dxx という順番に並び替えてから結合することで、辞書順最小を達成できます。