
树链剖分
新笑雨
这个作者很懒,什么都没留下…
展开
-
一道sam练习题
题意 解法 考虑答案实际上是每个子串的出现次数的平方和. 这个可以通过手玩样例验证. 考虑广义sam:先将所有字符串建成trie,然后再在trie上bfs,建出sam. 考虑fail树 每次插入一个新节点,会改变从这个节点开始到根的路径上的每个节点的right集合大小. 所以考虑树剖维护这种操作,然后每一个单词的答案就是之前所有单词的答案,再计算自己的答案,然后注意这里一个线段树节点维护的有...原创 2020-01-17 17:52:55 · 289 阅读 · 0 评论 -
loj 139
题意: 一棵有根树,初始根为1,点有权值,有5种操作: 换根,链加,子树加,查询链和,查询子树和 数据范围 节点数,操作数,点权≤1e5节点数,操作数,点权\le 1e5节点数,操作数,点权≤1e5 解法 树链剖分,对于后面4个操作都很好维护,然后考虑换根带来的影响,对于链上的操作是没有影响的,主要是子树操作,可以发现,如果根和查询的点x是同一个点,就是直接查询全树的和,如果根在x的子树外,就仍然...原创 2019-12-25 09:22:49 · 197 阅读 · 0 评论