LCT
Todobe
two funny foolish men
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
后缀自动机 + LCT 【bzoj2555】SubString
题目大意: 支持两个操作: 1、插入一串字符 2、查询一串字符在串中出现多少次。 强制在线题目分析: 维护一个动态的字符串,后缀自动机可以做。 要查询一串字符在串中出现的次数,就相当于查询这个串末尾字符代表的状态的right集合的大小,但是我们在维护后缀自动机的时候没办法维护right集合呀! 但是我们可以发现,一个节点的right集合等于在parent树上所有儿子节点的和。 所以只原创 2017-04-12 21:35:23 · 588 阅读 · 0 评论 -
动态树LCT 模板
题目描述: 输入: 第一行两个整数n和m; 接下来一行中n个整数表示初始点权; 接下来m行每行一个操作如上表所示。输出: 对于每一个连接操作,若p和q不连通,输出YES,并添加这条边;否则输出NO; 对于每一个删除操作,若p和q间有边,输出YES,并删除这条边,否则输出NO; 对于每一个查询最大及查询和原创 2017-04-04 15:28:32 · 836 阅读 · 0 评论 -
后缀自动机+LCT 【bzoj4545】 DQS的Trie
题目大意: 维护一个树,树的边上有一个字母,支持三个操作: 1、查询本质不同的子串的个数; 2、在树上的某一个节点长出一个新的子树; 3、查询某个串出现的次数。题目分析: 对这棵树维护一个广义的后缀自动机。 对于1操作,只要维护每个节点的max_ len减去parent树上父节点的max_len,详见bzoj4516生成魔咒的题解; 对于3操作,则维护LCT进行链加即可,详见bzoj2原创 2017-04-19 14:19:27 · 613 阅读 · 0 评论 -
bzoj3159 决战 LCT
题目大意: 维护一个树,支持以下操作: 1、链+ 2、链求和 3、链求最大 4、链求最小 5、链翻转(此处的翻转是指把链上的值翻转,而树的形态不变)题目分析:(LCT) 如果只有前四个操作就可以用LCT或者树链剖分+线段树随便维护一下就行了。 有了第五个操作就不行了。所以我们用两个LCT,一个维护这棵树的形态,另一个维护树上所有的权值。 两个LCT的链的剖分是一样的,但是splay原创 2017-06-12 16:20:47 · 695 阅读 · 0 评论
分享