![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
线段树合并
romiqi_new
这个作者很懒,什么都没留下…
展开
-
[线段树合并][Usaco2017 Jan]Promotion Counting
BZOJ4756 线段树合并板题 线段树合并就是把两颗线段树合并(这不是废话吗) 线段树维护的信息有可合并性(如最大值,和),因为要update对吧 所以就可以把两颗线段树合并在一起 如果当前位置节点两颗线段树都没有或者只有一颗有,就直接返回这个节点 否则合并一下信息(如求和,取max)然后递归处理左右子树 复杂度最坏一次O(nlogn)O(nlogn)O(nlogn)但一般远远小于这个复杂度 如...原创 2019-01-16 19:55:56 · 215 阅读 · 0 评论 -
[BZOJ4919&&5469][线段树合并][启发式合并]FJOI2018:领导集团问题
BZOJ4919 双倍经验传送门:BZOJ5469 设dp[i][j]dp[i][j]dp[i][j]表示第iii个点,子树最大值不超过jjj的方案数 则有dp[i][j]+=max(dp[vis[i]][k],k∈[j,n])dp[i][j]+=max(dp[vis[i]][k],k\in[j,n])dp[i][j]+=max(dp[vis[i]][k],k∈[j,n]) 上线段树优化 然后树上...原创 2019-02-26 10:50:38 · 273 阅读 · 0 评论 -
[线段树合并][动态图]魔法少女LJJ
BZOJ4399 第3.4个操作直接上权值线段树 第1.2个操作线段树合并 第5个操作在权值线段树上二分 第7个操作并查集做 第8.9个操作可以用字符串模拟快速读入防止超时 第6个操作显然会炸,所以用对数比较,log(m∗n)=log(m)+log(n)log(m*n)=log(m)+log(n)log(m∗n)=log(m)+log(n) Code: #include<bits/stdc+...原创 2019-01-20 17:10:02 · 197 阅读 · 0 评论 -
[WC2019雅礼集训][线段树合并]traffic
描述 A 国一年一度的盛会——国际健美操大赛就要开始了. A 国共有 n 座城市, 构成一棵以 1 号城市为根的有根树, 除了 1 号城市以外, 每个城市都有唯一的一个依附城市. 健美操大会将在 A 国 n 个城市中的某一个举行, 定义在城市 x 举行盛会的交通不便程度为将城市 x 删去后最大联通块的大小. 为了提高交通运输能力, A 国政府可以进行一次如下操作: 在删去 x 号城市后, 可以更改...原创 2019-05-18 15:47:31 · 213 阅读 · 0 评论 -
191005CSP模拟题解
T1:对于每条边,求删了这条边原图能否成为二分图,点边规模2e6 解法:首先判掉无奇环和一个奇环的情况 一条边合法当且仅当其属于所有奇环的交集且不属于任何一个偶环(会构成新的奇环) 那就弄个dfs树,对于每条返祖边树上差分一下,奇环+1偶环-1,最后看差分值是否为奇环个数即可 Code: #include<bits/stdc++.h> using namespace std; inli...原创 2019-10-05 17:16:26 · 173 阅读 · 0 评论