Jittery Roads Gym - 100889J (虚树 + DP + dfs 序, + 线段树)
每次给一个点集, 求每个点到其他所有点的最大距离:
会修改边权;
修改边权之后,
我们可以用 dfs 序 + 线段树维护 当前点到根节点的距离.
还可以用树状数组 + 差分思想 维护. {
dfs 序之后,每个点都会有一个维护的区间,然后我们在这个区间里加上这个点保存的边权.
每个边 修改,我们修改这个区间. 区间开头 + , 结尾 - 就可以了;
最后直接查询一下就会是点到根节点的距离.
}
然后我们建虚树的时候,可以不每次都拿 1 当根节点,可以找一个 rt .
Top_xiao的犯错记录:
写这个题的时候,出现了几个问题:
1. 建完虚树的时候, 把原图 和 虚树的图弄混了,竟然 用 par[u][0] 当做 u 的父亲.
2. 然后 跑 f2 的时候,不能用 f[it] 因为 f[it] 用可能还没有更新到.因为是同一个父亲节点,直接用 f[u] 就可以.
3. 第一次以 1 为根节点建虚树的时候, 1 有可能并不是关键点,但是会被算进来. 所以算 f2 的时候需要特判一下.
4. 然后换了一种建虚树的方法, 并不是 以 1 当做根节点. 这个时候根节点的 f2 还要是 0, 还需要特判一下.
但是比 上一种 特判简单.
5. 最后 我的 dis 没有更新完全, 就是只更新了关键点,那些 lca 的非关键点没有更新.tmd.
#include<bits/stdc++.h>
#define ls now << 1
#define rs now << 1 | 1
using namespace std;
const int N = 1e5 + 100;
struct edge {int u, v, w, next;
} g[N <&l
Jittery Roads Gym - 100889J (虚树 + DP + dfs 序, + 线段树)相关推荐
- codeforces E. Jamie and Tree LCA+dfs序+线段树
题解: 写起来还稍微有点麻烦. dfs序+线段树可以维护子树的整体修改和查询. 因此,这道题我们要往子树上靠. 我们首先从1号点进行dfs遍历,顺便求出点的dfs序和深度,然后我们采用倍增的思想,可以 ...
- New Year Tree(dfs序+线段树+二进制)
题意: 给出一棵 n个节点的树,根节点为 1.每个节点上有一种颜色 ci.m次操作.操作有两种: 1 u c:将以 u为根的子树上的所有节点的颜色改为c. 2 u:询问以 u为根的子树上的所有节点的颜 ...
- 求和(dfs序+线段树)
题意: 已知有n个节点,有n−1条边,形成一个树的结构. 给定一个根节点k,每个节点都有一个权值,节点i的权值为vi. 给m个操作,操作有两种类型: 1 a x :表示将节点a的权值加上x 2 a ...
- 【XSY2667】摧毁图状树 贪心 堆 DFS序 线段树
题目大意 给你一棵有根树,有\(n\)个点.还有一个参数\(k\).你每次要删除一条长度为\(k\)(\(k\)个点)的祖先-后代链,问你最少几次删完.现在有\(q\)个询问,每次给你一个\(k\), ...
- Codeforces 343D Water Tree(DFS序 + 线段树)
题目大概说给一棵树,进行以下3个操作:把某结点为根的子树中各个结点值设为1.把某结点以及其各个祖先值设为0.询问某结点的值. 对于第一个操作就是经典的DFS序+线段树了.而对于第二个操作,考虑再维护一 ...
- [CodeForces877 E. Danil and a Part-time Job]dfs序+线段树
[CodeForces877 E.Danil and a Part-time Job]dfs序+线段树 分类:Data Structure SegMent Tree dfn 1. 题目链接 [Code ...
- bzoj3252攻略 贪心+dfs序+线段树
题目链接:戳这里 3252: 攻略 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 605 Solved: 255 [Submit][Status] ...
- 【BZOJ-3252】攻略 DFS序 + 线段树 + 贪心
3252: 攻略 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 339 Solved: 130 [Submit][Status][Discuss] ...
- dfs序+线段树 BZOJ3252 攻略
3252: 攻略 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 496 Solved: 211 [Submit][Status][Discuss] ...
最新文章
- java反序列化weblogic_[Todo]Java反序列化-weblogic
- kettle mysql 配置_Kettle数据库配置抽离
- 面试官:精通 Mybatis?请回答下这几个问题
- 服务器文件嗅探,嗅探TFTP配置文件传输
- TFS修改工作区映射区
- linux0775权限,Linux权限管理
- OpenCV applyColorMap函数实现False color伪色彩的实例(附完整代码)
- 比较重量 网易2016实习研发工程师编程题
- python清洗数据用什么包_格式化和清洗数据的Python工具包
- linux查看镜像的详细信息,docker inspect命令查看镜像详细信息
- Thrift 编译链接的时候出问题
- Hibernate学习笔记--导航
- 你的目的是什么是谁指使你_零基础是一种回归初心的思考:写作的目的是什么?怎么写?写谁?...
- 【Git/Github学习笔记】GitHub上README写法暨GFM语法解读
- 上传图片报413错误
- JAVA dwg转pdf的正确解法
- 必须吹吹自己,太厉害了!-简直不敢相信,面试拼多多我只用了15天就成功拿下offer,
- Java经典面试:源码解读及如何保证线程安全
- 通过百世单号自动识别快递公司,并查询大量物流情况
- 减脂肪应该吃什么食物