4251: 子串排序
内存限制:128 MB
时间限制:1 S
标准输入输出
题目类型:传统
评测方式:文本比较
上传者:
提交:94
通过:42
题目描述
系统会为您提供n个字符串。 每个字符串由小写英文字母组成。 重新排列(重新排序)给定的字符串,使得对于每个字符串,放在它之前的所有字符串都是其子字符串。
字符串a是字符串b的子字符串,即如果可以在a中找到几个连续字母等于b。 例如,字符串“for”作为子字符串包含在“codeforces”,“for”;又如“therefore”字符串中,但不作为子字符串包含在字符串“four”,“fofo”和“rof”。
字符串a是字符串b的子字符串,即如果可以在a中找到几个连续字母等于b。 例如,字符串“for”作为子字符串包含在“codeforces”,“for”;又如“therefore”字符串中,但不作为子字符串包含在字符串“four”,“fofo”和“rof”。
输入格式
第一行包含整数n(1≤n≤100)-字符串数。
接下来的n行包含给定的字符串。 每个字符串中的字母从1到100(含)。 每个字符串由小写英文字母组成。
一些字符串可能相等。
接下来的n行包含给定的字符串。 每个字符串中的字母从1到100(含)。 每个字符串由小写英文字母组成。
一些字符串可能相等。
输出格式
如果无法按要求的顺序对n个给定的字符串重新排序,请打印“ NO”(不带引号)。
否则,按要求的顺序打印“是”(不带引号)和n个给定的字符串。
否则,按要求的顺序打印“是”(不带引号)和n个给定的字符串。
输入样例 复制
5
a
aba
abacaba
ba
aba
输出样例 复制
YES
a
ba
aba
aba
abacaba