Chaîne la plus longue atteignable

On vous fournit un ensemble de chaînes de caractères. Votre objectif est de repérer la chaîne la plus longue que l’on peut construire en ajoutant des caractères sur la gauche, en partant initialement d’une chaîne vide, tout en veillant à ce que chacune des chaînes intermédiaires apparaisse dans l’ensemble de départ. S’il existe plusieurs chaînes de longueur maximale, il faut retourner celle dont l’ordre lexicographique est le plus petit.

Entrée

La première ligne contient un entier n (1 ≤ n ≤ 100 000), qui représente le nombre de chaînes incluses dans l’ensemble initial.
Les n lignes suivantes comportent chacune l’une des chaînes de l’ensemble. Chaque chaîne est formée de lettres minuscules de l’alphabet anglais et a une longueur comprise entre 1 et 30.

Sortie

Affichez la chaîne la plus longue qui peut être construite à partir de l’ensemble donné. Si aucune chaîne ne satisfait les conditions, affichez une chaîne vide.

Exemples

Entrée

Sortie

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