摘要: 题目链接:BZOJ - 1014题目分析求两个串的 LCP ,一种常见的方法就是 二分+Hash,对于一个二分的长度 l,如果两个串的长度为 l 的前缀的Hash相等,就认为他们相等。这里有修改字符和插入字符的操作,所以用 Splay 来维护串的 Hash 值。一个节点的值就是它的子树表示的字串的 ... 阅读全文
posted @ 2015-04-24 21:08 JoeFan 阅读(296) 评论(0) 推荐(0) 编辑
摘要: 题目链接:BZOJ - 3995题目分析这道题..是我悲伤的回忆..线段树维护连通性,与 BZOJ-1018 类似,然而我省选之前并没有做过 1018,即使它在 ProblemSet 的第一页。更悲伤的是,这道题有 40 分的暴力分,写个 Kruskal 就可以得到,然而我写了个更快的 DP 。这本... 阅读全文
posted @ 2015-04-24 16:02 JoeFan 阅读(410) 评论(0) 推荐(0) 编辑
摘要: 题目链接:BZOJ - 1086题目分析这道题要求给树分块,使得每一块的大小在 [B, 3B] 之间,并且可以通过一个块外的节点(块根)使得整个块联通。那么我们使用一种 DFS,维护一个栈,DFS 完一个节点 x 的所有子树后,就将 x 压入栈内。我们不能简单的判断栈内元素 >= B 就将栈中的元素... 阅读全文
posted @ 2015-04-24 15:39 JoeFan 阅读(251) 评论(0) 推荐(0) 编辑