2019-6-14考试总结

本文详细解析了三道算法竞赛题目,包括字符串处理、树结构遍历与期望计算、树上差分与线段树合并,涵盖了Trie树、AC自动机、DP算法、记忆化搜索、树上LCA、离散化与线段树等核心概念。

A. Censoring

题目描述

$FJ$把杂志上所有的文章摘抄了下来并把它变成了一个长度不超过$10^5$的字符串$S$。他有一个包含$n$个单词的列表,列表里的$n$个单词记为$t_1……t_N$。他希望从$S$中删除这些单词。
$FJ$每次在$S$中找到最早出现的列表中的单词(最早出现指该单词的开始位置最小),然后从$S$中删除这个单词。他重复这个操作直到$S$中没有列表里的单词为止。注意删除一个单词后可能会导致$S$中出现另一个列表中的单词
$FJ$注意到列表中的单词不会出现一个单词是另一个单词子串的情况,这意味着每个列表中的单词在$S$中出现的开始位置是互不相同的
请帮助$FJ$完成这些操作并输出最后的$S$

输入格式

第一行包含一个字符串$S$
第二行包含一个整数$N,N<2000$ 接下来的$N$行,每行包含一个字符串,第$i$行的字符串是$t_i$

输出格式

一行,输出操作后的$S$

样例
样例输入
begintheescapexecutionatthebreakofdawn
2
escape
execution
样例输出
beginthatthebreakofdawn

转载于:https://www.cnblogs.com/Milk-Feng/p/11025372.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值