Problem4771--文明社会(culture)

4771: 文明社会(culture)

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

十八大提出,倡导富强、民主、文明、和谐、自由、平等、公正、法治、爱国、敬业、诚信、友善,积极培育和践行社会主义核心价值观。
但是在互联网上,会有一些不文明的人发送不文明的言论。我们的目的,就是要自动过滤并且识别这些言论。
给出一个字符串 $S$,表示哪些可能不文明的言论。在给出一个字典 $T$,包含了 $n$ 条违规的用语,$T[1],\ T[2],\ ...,\ T[n]$。要在 S 中添加最少的 * ,使得只要违规用户 $T[i]$ 在 S 中出现,就得在每个 T[i] 的字符之间添加 * 。
比如说 S = aaabbssss, T[1] = abb, T[2] = bbss。那么最后符合规定的 S' 就为 aaa*b*b*s*sss 。其中 abb 在第 3 到第 5 个字符之间出现, bbss 在第 4 到第 7 个字符出现。
数据保证字符串 S 不包括字符 * ,且 T[i] 的长度一定大于 1 。
其中 |S| <= 1000, n <= 10, 1 <= |T[i]| <= 100; |S| 表示 S 字符串的长度, |T[i]| 表示 T[i] 字符串的长度。

Input

输入一共有 n+2 行。
第一行为 S 。
第二行为 n (一个有几个违规用语)。接下来 n 行每行一个字符串表示违规用语 T[i] 。

Output

输出共一行。即合格的字符串 S' 。

Constraints

对于 $80\%$ 的数据,$|S| \leq 100,\ n \leq 10, 1 < |T[i]| \leq 50$;
对于 $100\%$ 的数据,$|S| \leq 1,000,\ n \leq 10,\ 1 < |T[i]| \leq 100$。

Sample 1 Input

aaabbssss
2
abb
bbss

Sample 1 Output

aaa*b*b*s*sss

Sample 2 Input

aabbbccbdd
3
aa
bb
cc

Sample 2 Output

a*ab*b*bc*cbdd

HINT

题目来源:2018 年宁波市第 33 届中小学生程序设计展示能力 T2。

Source/Category