摘要:
https://loj.ac/problem/10130 题目描述 给出一棵$n$个点的树,有$Q$个询问,每次询问节点$x、y$之间的距离。 思路 这是一棵不带权树,所以我们只要知道了$x、y$的$LCA$就可以求出两点间的距离。求$LCA$的方法有 阅读全文
摘要:
https://loj.ac/problem/2012 题目描述 给出$n$个字符串,他们有一定顺序,并且满足(设第$i$个字符串为$s$): $①$若这$n$个字符串中有$s$的后缀,并且顺序在$i$之后,代价为$n n$。 阅读全文
摘要:
https://loj.ac/problem/10056 题目描述 给出一棵$n$个节点的带权树,求树上最长异或路径。 思路 这道题其实思路和 "Nikitosh和异或" 差不多,都是利用异或的性质转化,再用字典树维护。首先我们知道树上两点必定有且只有 阅读全文
摘要:
https://loj.ac/problem/10054 题目描述 给出$N$个字符串,再给出$M$个字符串,对于$M$个中每一字符串求出$N$个中满足是它的前缀或它是这个前缀的数目的总和。 思路 显然,我们需要解决多个字符串前缀的问题,可以选择字典树 阅读全文
摘要:
https://loj.ac/problem/10053 题目描述 给出一个字典和一个句子,求最多能理解到这句话的第几个位置(前缀)。 思路 字典树,自然如同它的名字一样,可以用来处理字典的问题。首先显然我们可以建一棵字典树,接下来我们明确我们求的是能 阅读全文
摘要:
https://loj.ac/problem/10051 题目描述 给出$N$个数的序列$A$,要求求出两段连续的子序列(互不重叠),他们内的数异或后值的和最大。 思路 这道题其实是 "The XOR Largest Pair" 的进阶版,我们知道暴力 阅读全文
摘要:
https://loj.ac/problem/10050 题目描述 给出$n$个整数,求选出两个数使它们的异或值最大。 思路 解决异或问题也是字典树的常用作用之一。我们考虑对于一个数$x$,我们如何求出它的异或值最大的另一个数。异或的定义是每一位相同为 阅读全文
摘要:
https://loj.ac/problem/10049 题目描述 给出$n$个字符串,求是否存在一个串是另一个串的前缀。 思路 字典树的模板题。我们考虑在建字典树时增加$end$标记,在插入字符串判断是否访问到$end$标记即可。不过需要特判是否插入 阅读全文
摘要:
https://loj.ac/problem/10047 题目描述 给出一个字符串$S$,求出其子串中满足$ABA$形式且$|A|≥k$,$|B|≥1$的数目。 思路 首先明确这道题$n^2$暴力是可以过的,而题目中定义可以转化为$A$为子串的公共前后 阅读全文
摘要:
https://loj.ac/problem/10048 题目描述 给出两个字符串$S$和$T$,要求不断从$S$中删除$T$,删除$T$后空缺为补齐,求删完后的字符串。 思路 单字符串匹配,显然我们可以用$KMP$。先跑一遍$KMP$的板子,预处理匹 阅读全文