Se dau N
numere naturale nenule a[1]
, a[2]
, …, a[N]
.
Cerința
Să se construiască un număr minim folosind toate cifrele numerelor date astfel încât șirul cifrelor fiecărui număr să apară ca subșir în numărul minim construit.
Date de intrare
Pe primul rând din fișierul catmin.in
este scris numărul natural N
. Pe al doilea rând sunt scrise cele N
numere naturale, separate prin câte un spațiu.
Date de ieșire
Pe primul rând din fișierul de ieșire catmin.out
vor fi scrise cifrele numărului minim construit. Cifrele nu vor fi separate prin spațiu.
Restricții și precizări
1 ≤ N ≤ 100.000
1 ≤ a[i] ≤ 1.000.000.000
pentru oricei=1..N
- Spunem despre
a[i1], a[i2], ..., a[ik]
că este subșir al șiruluia
, dacă1 ≤ i1 < i2 < i3 < ... < ik ≤ N
- Pentru teste în valoare de 21 puncte:
N ≤ 500
- Pentru alte teste în valoare de 33 puncte:
N ≤ 10.000
- Pentru alte teste în valoare de 46 puncte: nu există alte restricții
Exemplu:
catmin.in
3 413 2007 29
catmin.out
200241379
Explicație
Numărul final va avea 9
cifre, adică toate cifrele celor trei numere date. Numerotând pozițiile numărului minim obținut cu 1
, 2
, …, 9
se observă că 413
se află ca subșir în numărul final și ocupă pozițiile 5,6,7
, numărul 2007
ocupă pozițiile 1,2,3,8
, iar numărul 29
ocupă pozițiile 4
și 9
. Se observă ușor că acest număr este cel mai mic ce poate fi construit în condițiile date.