首页 > 代码库 > 欧拉回路

欧拉回路

【题目描述】

现给定一组单词,如果存在某两个单词,一个单词的前缀和另一个单词的后缀相同,则认为这两个单词可以相连,例如“abce”与“efdg”可以相连,询问这组单词能否排成一排,如果可以,则输出字典序最小的排列方式。

【输入描述】

输入多组数据,对于每组数据:

第一行输入一个正整数N(3 <= N <=1000),表示此组单词的数目;

接下来N行,每行输入一个单词,每个单词的长度不超过20。

【输出描述】

对于每组输入数据,输出一行,表示排列方式,每两个单词之间用一个“.”隔开,如果不存在合法的排列方式,则输出“***”。

【输入样例】

2

6

aloha

arachnid

dog

gopher

rat

tiger

3

oak

maple

elm

【输出样例】

aloha.arachnid.dog.gopher.rat.tiger

***

欧拉回路