上一页 1 ··· 3 4 5 6 7 8 9 下一页
该文被密码保护。 阅读全文
posted @ 2021-08-17 19:56 Acestar 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 线段树优化建图适用于对一段区间内的点进行连边,如果暴力连边,复杂度是 \(O(n^2m)\) 的,显然过大。 考虑支持各种区间操作的线段树。建立两棵线段树,第一棵树从父亲向儿子连边权为 0 的边,这里称为入树,第二棵树从儿子向父亲连边权为 0 的边这里称为出树,它们的叶子节点是相同的,为题目里给出的 阅读全文
posted @ 2021-08-17 13:45 Acestar 阅读(118) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2021-08-14 22:00 Acestar 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 非旋Treap(fhq treap) 不需要旋转, 只需要分裂 $Split$ 和合并 $Merge$,就可以支持 $Splay$ 的所有操作。 非常好写,非常好调。 并且支持可持久化。 对于每个点需要一个附加权值,根据这个附加权值维护一个小根堆,这样这棵树平衡与否是由这个附加权值决定的,那么这个权 阅读全文
posted @ 2021-08-12 11:52 Acestar 阅读(83) 评论(0) 推荐(0) 编辑
摘要: Link Solution 考虑在什么条件下子区间 \([l,r]\) 是 \(1 到 r - l + 1\) 的排列, \([l,r]\) 中没有重复的数字 \([l,r]\) 中最大值为 \(r - l + 1\) 于是可以分治,每次考虑在 \([l,r]\) 中且经过 \(mid\) 的子区间 阅读全文
posted @ 2021-08-10 11:44 Acestar 阅读(49) 评论(0) 推荐(0) 编辑
摘要: Link Solution 考虑对于子树 \(x\) 的 \(SG(x)\),对其后继状态取 \(mex\), \(x\) 的后继状态就是删去子树 \(x\) 内任意一个点所得若干游戏的 \(SG\) 的异或和。 假设 \(y\) 为 \(x\) 一个儿子,考虑从 \(y\) 转移到 \(x\), 阅读全文
posted @ 2021-08-10 09:31 Acestar 阅读(64) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2021-08-04 20:01 Acestar 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 目前缺少高精减低精 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; const int N = 1e5; struct INT { int a[N]; 阅读全文
posted @ 2021-07-22 21:50 Acestar 阅读(65) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2021-07-22 20:13 Acestar 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 树形DP 求出每个子树的最长链,与父亲当前的最长链加起来更新直径,然后更新父亲最长链。 int f[N],mx; void dfs(int u,int fa) { for(int i = head[u]; i; i = e[i].nxt) { int v = e[i].v; if(v == fa) 阅读全文
posted @ 2021-07-21 22:36 Acestar 阅读(61) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 下一页