![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LCT
peter_819
这个作者很懒,什么都没留下…
展开
-
【最小生成树】【LCT】【bzoj2594】水管局长数据加强版
题目大意: 给定无向图,动态进行删除边,查询两点路径最大边权值。题解: 1. 首先考虑离线操作倒序进行插入边操作。 2. 之后考虑新加进来的边一定会在原来的最小生成树上产生环,找到环上的最大权删去就可以更新最小生成树。 3. 就相当于加边时判断新加的边两端点在原最小生成树上路径最大值和此边边权关系,新加的小就断开原来的最大边,连接新边。 4. 3的过程可以用LCT维护。 5. LC原创 2017-01-01 20:51:35 · 682 阅读 · 0 评论 -
【bzoj2049】【LCT】洞穴勘测
题意:维护森林支持动态插入一条边,删除一条边,查询两点连通性 数据范围:100%的数据满足n≤10000, m≤200000 题解:LCT模板题,注意link-cut时提根即可#include <iostream>#include <cstdio>#include <cstring>#define MAXN 21000using namespace std;struct nod原创 2016-12-28 16:07:30 · 451 阅读 · 0 评论 -
【bzoj2002】【LCT】弹飞绵羊
题意:给一段序列和k[i]k[i]表示从ii能弹到i+k[i]i+k[i],要求支持动态修改k值,查询由i点几次能被弹出序列长度 数据范围:对于100%的数据n<=200000,m<=100000 题解:首先对于一个点,可以从这个点向i+k[i]i+k[i]连一条边,i+k[i]>ni+k[i]>n时连向n这个点,显然一个点只向后连一条边,就是一棵树,求得答案就是i节点在以n+1为根的树中的原创 2016-12-28 16:24:55 · 278 阅读 · 0 评论