某数据处理系统需要对实时采集的日志文本进行敏感片段清理。系统接收到一段仅由小写字母组成的原始日志字符串 S,以及一段需要过滤的违规特征串 T。
系统按照如下规则执行过滤操作:
需要注意的是,由于删除操作会改变字符串结构,可能会在新的位置形成新的 T,因此必须持续执行该过程。
你的任务是:输出经过完整过滤后的最终日志内容。
第一行输入一个字符串 S,表示原始日志内容。
第二行输入一个字符串 T,表示需要过滤的特征串。
输出一个字符串,表示最终过滤完成后的日志内容。
ababcabccab abc
ab
abcdeabcabcddfabcdef abcd
efef
zzxyzzxyzxyzxyxyzzxyzabcxyzzxyxyzz xyz
zzzabcz
初始字符串为:\text{"ababcabccab"}
需要删除的特征串为:T = \text{"abc"}
处理过程如下:
当前字符串:ababcabccab,第一个出现的 abc 从位置 3 开始(ab[abc]abccab),删除后得到:S = \text{"ababccab"}。
当前字符串:ababccab,再次查找第一个 abc,从位置 3 开始(ab[abc]cab),删除后得到:S = \text{"abcab"}。
当前字符串:abcab,再删除一次 abc 后,结果为 ab,结果不再包含 abc,处理结束。
最终结果为:\text{"ab"}。
| 测试点编号 | S,T 长度 |
|---|---|
| 1 \sim 6 | S 的长度 \in [1, 100],T 的长度 \in [1, 10] |
| 7 | S 的长度 \in [1, 500],T 的长度 \in [1, 30] |
| 8 \sim 20 | S 的长度 \in [1, 10^6],T 的长度不超过 S 的长度 |
对于 100\% 的数据,满足 1 \le |S| \le 10^6,1 \le |T| \le |S|,字符串仅包含小写英文字母。保证最终字符串长度至少为 1。
其中 |S| 表示字符串 S 的长度。