#arc058d. [arc058_d]Iroha Loves Strings

[arc058_d]Iroha Loves Strings

問題文

いろはちゃんは NN 個の文字列 s1,s2,...,sNs_1, s_2, ..., s_N を持っています。

いろはちゃんは、この中からいくつか文字列を選びます。そして添字の昇順で選んだ文字列を繋げ、長さ KK の文字列を作ります。

作れる長さ KK の文字列のうち、もっとも辞書順で小さいものを求めてください。

制約

  • 1N20001 ≦ N ≦ 2000
  • 1K1041 ≦ K ≦ 10^4
  • 1siK1 ≦ |s_i| ≦ K
  • s1+s2+...+sN106|s_1| + |s_2| + ... + |s_N| ≦ 10^6
  • ii について, sis_i は全て半角英小文字のみから成る文字列である。
  • 長さ KK の文字列を作る方法が存在することが保証される。

入力

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

NN KK s1s_1 s2s_2 : sNs_N

出力

作れる長さ KK の文字列のうち、もっとも辞書順で小さいものを出力せよ。


入力例 1

3 7
at
coder
codar

出力例 1

atcodar

atcodar を選択します。


入力例 2

3 7
coder
codar
at

出力例 2

codarat

codarat を選択します。


入力例 3

4 13
kyuri
namida
zzzzzzz
aaaaaa

出力例 3

namidazzzzzzz

namidazzzzzzz を選択します。