上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 28 下一页
该文被密码保护。 阅读全文
posted @ 2019-02-12 23:09 Creed-qwq 阅读(11) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2019-02-12 00:14 Creed-qwq 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 直接对树dfs一发,对每个节点建出主席树。 查询的时候主席树上二分,四个参数x+y-lca(x,y)-fa[lca(x,y)]。 如果要求支持动态加边的话,只需要一个启发式合并即可,每次暴力重构主席树。 阅读全文
posted @ 2019-02-08 05:09 Creed-qwq 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 我们首先考虑没有操作1和操作2怎么做 分析一下lca(x,y)!=root这个条件。 也就是说,每一组中的任意两个点,都需要属于根节点的两个不同儿子的子树。 我们不妨求出根节点的每一个儿子中有多少个给出的点,这个直接用树状数组就能求出来。 这样就得到了一个序列a1,a2...acnt。 这里注意:这 阅读全文
posted @ 2019-02-07 21:03 Creed-qwq 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 01背包退背包 首先dp出01背包数组dp[]。 完全背包退背包 首先dp出完全背包数组dp[]。 转移的时候带系数的背包不一定可以退背包。 还有个比较经典的题 https://www.luogu.org/problemnew/show/P1450 容斥求多重背包方案数。 阅读全文
posted @ 2019-02-07 07:00 Creed-qwq 阅读(769) 评论(0) 推荐(0) 编辑
摘要: 考虑到路径是有向的,不是很好维护。 如果路径无向的话,可以直接转化为链加和查询操作。 既然有向的话,不妨考虑一波hash。 对于一组询问x,y,可以把树划分为两颗子树。 合法显然需要满足 x子树的起点的hash=y子树的终点的hash x子树的终点的hash=y子树的起点的hash 直接用LCT维护 阅读全文
posted @ 2019-02-07 06:30 Creed-qwq 阅读(141) 评论(0) 推荐(0) 编辑
摘要: day4 下午:订正上一场CF的D和E,学习ETT。 晚上:订正ZR T1,codeforces。 半夜:LCT习题一道,继续学习组合数学,做两道题。 day5 订正CF F题 阅读全文
posted @ 2019-02-07 04:19 Creed-qwq 阅读(174) 评论(0) 推荐(0) 编辑
摘要: https://www.lydsy.com/JudgeOnline/problem.php?id=2555 想一下sam求子串出现次数的方法基本就能得到正解。 由于子串出现次数是一个子树和的形式。 动态插入字符串又要求动态维护树的结构,显然要用LCT。 注意一下LCT维护子树和的写法即可。 cpp 阅读全文
posted @ 2019-02-07 04:16 Creed-qwq 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 这个题目很明显在暗示你要用泰勒展开。 直接套上去泰勒展开的式子,精度的话保留12项左右即可。 分别维护每一项的和,可能比较难写吧。 然后强行套一个LCT就没了。 阅读全文
posted @ 2019-02-06 21:18 Creed-qwq 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 题目:https://www.luogu.org/problemnew/show/P3721 手玩一下即可AC此题。 结论:插入x后,x要么会成为x的前驱的右儿子,要么成为x的后继的左儿子,这取决于它的前驱和后继的深度。 证明:首先可以证明的是,x的前驱和后继一定存在祖先与后代的关系,因为如果不存在 阅读全文
posted @ 2019-02-06 21:16 Creed-qwq 阅读(215) 评论(0) 推荐(0) 编辑
上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 28 下一页