摘要:
题解 可持久化KMP。 那个退回操作我们可以把它看做在操作树上dfs,所以我们可以先把这个树弄出来。 对于连续一段串的匹配问题。 我们可以搞个KMP自动机,输入当前节点编号也就是nxt,输入下一段连续的字符串,输出nxt跳完之后的值。 然后我们可以把这个字符串的fail树弄出 阅读全文
摘要:
题解 如果只有加法没有减法,那么我们朴素进位的时间复杂度是均摊O(1)的。 那么减法的话我们维护一个增量的数,一个减量的数,就是一个存所有a0的变量,一个存所有$a define N 1000002 using namespace std; typedef long long ll; ty 阅读全文
摘要:
题解 先把点分树建出来。 对于吗,每一个询问(l,r,x),我们对于x要找到它在点分树上最靠上的父亲节点使得两点之间的点在l∼r中。 然后问题就变成了从一个根出发,可以经过l∼r的点,能访问的颜色个数。 那么因为有了点分树,所以我们对于每个点dfs它的子树的复杂度 阅读全文