Stringa più lunga raggiungibile

Ti viene fornito un insieme di stringhe. Il tuo compito è trovare la stringa più lunga che si possa costruire aggiungendo caratteri a sinistra, partendo da una stringa vuota, in modo che tutte le stringhe intermedie durante questo processo appartengano all’insieme iniziale. Se ci sono più stringhe con la stessa lunghezza massima, stampa quella con l’ordine lessicografico più piccolo.

Ingresso

La prima riga contiene un intero n (1 ≤ n ≤ 100 000), che rappresenta il numero di stringhe presenti nell’insieme iniziale.

Uscita

Stampa la stringa più lunga che può essere costruita utilizzando il set di stringhe fornito. Se non esiste alcuna stringa che soddisfi il requisito, stampa una stringa vuota.

Esempi

Ingresso

Uscita

7
pr
profound
f
found
fo
foun
fou

found

3
ab
abc
abcd

5
a
ab
aba
abaz
abad

abad

Constraints

Time limit: 4 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue