随笔分类 -  Splay

摘要:题解: 题意不能说明白了????? 比例到底是数量还是价值?????? 平衡树维护凸包 阅读全文
posted @ 2018-03-20 16:35 ws_zzy 阅读(247) 评论(0) 推荐(0)
摘要:题解:我现在真的怀疑自己的语文水平 用f[i]表示以i为结尾的最长上升子序列 然后找前面的j转移 f[i]=max{f[j]}+1 (j<=i&&max[j]<=a[i]&&a[j]<=min[i]) 这是偏序关系,用树套树或CDQ分治解决 阅读全文
posted @ 2018-03-15 21:30 ws_zzy 阅读(186) 评论(0) 推荐(0)
摘要:题解:斜率优化DP 用平衡树维护凸包 阅读全文
posted @ 2018-03-12 11:59 ws_zzy 阅读(302) 评论(0) 推荐(0)
摘要:题解: SB的我打了无旋Treap,然后在洛谷上光荣的T了 BZOJ极限卡时A了 (每个初始位置后面加入的数)的影响是可以直接算的,然后初始位置之间的影响用平衡树(线段树)来维护即可 阅读全文
posted @ 2018-03-01 22:47 ws_zzy 阅读(146) 评论(0) 推荐(0)
摘要:题解:交换某节点的两棵子树仅对 此节点子树对答案的贡献 有影响 Dfs,启发式合并时顺便求逆序对即可,贪心交不交换 O(nlogn*logn) Noname讲过一种合并Treap求逆序对,仅需O(nlogn),还不会 注意:插入时维护路径上的siz,插入完Splay到根节点的儿子 阅读全文
posted @ 2018-02-27 21:28 ws_zzy 阅读(118) 评论(0) 推荐(0)
摘要:题解:按照点的Dfs序走 用Splay维护Dfs序即可 插入时找前驱和后继,插在中间 阅读全文
posted @ 2018-02-20 18:30 ws_zzy 阅读(178) 评论(0) 推荐(0)
摘要:题解: 解法1: 树链剖分一下,对每条链建立一颗Splay 以宗教为第一关键字,深度为第二关键字建立 查询相当于Splay的一个区间 修改相当于删除一个节点,加入一个节点 O(nlog^2n) O(n); 解法2: 树链剖分一下,对每条链建立maxc棵权值线段树,动态开点 O(nlog^2n) O( 阅读全文
posted @ 2018-02-20 18:00 ws_zzy 阅读(137) 评论(0) 推荐(0)
摘要:题解: dep[LCA(a,b)]等价于把a到根路径+1,然后询问b到根路径的权值 按左右端点分别排序求出值后作差就可以了 分块TLE了QWQ LCT代码 分块代码 阅读全文
posted @ 2018-02-19 20:27 ws_zzy 阅读(153) 评论(0) 推荐(0)
摘要:题解:LCT维护Splay形态 Splay后发现只会有几个点发生变化,用LCT维护一下就可以了 在Splay中维护siz 还可以用Splay维护DFS序,旋转后DFS序不变,深度以子树为单位变化 天真的我以为直接模拟Splay可以A掉QWQ 阅读全文
posted @ 2018-02-19 20:22 ws_zzy 阅读(157) 评论(0) 推荐(0)
摘要:题解:用LCT维护parent树的Right集合大小 为什么我的代码这么慢??? 问题:对SAM理解的还不够深 吐槽:神加密 阅读全文
posted @ 2018-02-19 20:08 ws_zzy 阅读(167) 评论(0) 推荐(0)
摘要:题解:动态树,维护Splay最深的被标记过的点 每个询问先Access(x); 当然用树链剖分也可以 阅读全文
posted @ 2018-02-19 20:05 ws_zzy 阅读(146) 评论(0) 推荐(0)