树链剖分
良月澪二
EU gosto de música
展开
-
CF838B Diverging Directions
树链剖分,线段树,生成树原创 2019-11-01 19:17:10 · 257 阅读 · 0 评论 -
LOJ #2049. 「HNOI2016」网络
树链剖分,priority_queue,线段树,堆原创 2019-10-20 08:32:36 · 212 阅读 · 0 评论 -
Luogu P1505 [国家集训队]旅游
树链剖分原创 2019-09-01 09:54:01 · 166 阅读 · 0 评论 -
Luogu P4281 [AHOI2008]紧急集合 / 聚会
题目链接:传送门 在一个5e5点数的图中,5e5个询问每次询问给出三个点,问哪个点是这三个点到那个点的距离之和最小,输出那个点和最小的距离和 要往LCA上想 设那个点为x,三个点中的任意两个点为a,b 无论你的x放到哪里,都有路径a->x->b 所以这个路径是确定的 那么现在需要让第三个点到x的距离最小 显然第三个点跟x重合的时候距离最小 所以变成了求三个点lca的问题 如果三个点的l...原创 2019-08-04 17:07:37 · 215 阅读 · 0 评论 -
Luogu P3038 [USACO11DEC]牧草种植Grass Planting
题目链接:传送门 每次操作给两个点之间的所有边权+1或询问两个点之间的边权和 来刷板子了 注意点权转边权 就是最后dfn+1 #include <iostream> #include <cstdio> #include <cstring> #include <cstdlib> #include <complex> #include <...原创 2019-07-19 15:25:24 · 219 阅读 · 0 评论 -
Luogu P2982 [USACO10FEB]慢下来Slowing down
题目链接:传送门 读了好几遍题 没看到“粮仓在一号牧场” 所以没读懂卡了好久 意思就是一头牛走到自己的位置后 再有其他牛走过时 这头其他牛的答案会+1 树剖单点修改+询问一条链就好了 #include <iostream> #include <cstdio> #include <cstring> #include <cstdlib> #include...原创 2019-07-19 15:12:59 · 178 阅读 · 0 评论 -
Luogu P3313 [SDOI2014]旅行
题目链接:传送门 动态开点+树剖的 模板吧。 都很熟的话 就挺好写的 特别注意在dfs序上修改 #include <iostream> #include <cstdio> #include <cstring> #include <cstdlib> #include <complex> #include <algorithm> ...原创 2019-06-29 08:25:26 · 171 阅读 · 0 评论 -
Luogu P3833 [SHOI2012]魔法树
题目链接:传送门 树剖板子 区间加,子树查询 树剖里查询的时候x和y地方小于号写反T了一会 a,b写成dfn[a],dfn[b]竟然还有50分又WA了一会 也就交了二十遍 。 #include <iostream> #include <cstdio> #include <cstring> #include <cstdlib> #include <...原创 2019-07-13 19:55:55 · 163 阅读 · 0 评论 -
CF1062E Company
题目链接:传送门 翻译那边有 要知道 树上一个区间的公共lca是区间dfs序的最小值和最大值对应的两个点的lca 证明可以去网上找 删掉dfs最大或最小的点 然后再通过一次dfs序最大值最小值找出相应的次大和次小 所以只要找出dfs序的最大次大和最小次小就可以了 线段树维护一下 有些小细节 #include <iostream> #include <cstdio> #inc...原创 2019-04-27 19:42:19 · 248 阅读 · 0 评论 -
Luogu P4592 [TJOI2018]异或
题目链接:传送门 询问子树中点与给定值最大异或值,或x到y路径上与给定值最大异或值 可持久01trie的板子和树剖掺起来 因为细节调到爆炸 特别是rt rt rt rt 写得太乱 去借鉴了他的代码重构了一些地方 思路还是比较清晰的 比较板子 路径就是记下开头和结尾再查 子树就是按树剖的套路查询 /** * @Date: 2019-04-13T15:14:58+08:00 * @Last m...原创 2019-04-13 17:00:07 · 237 阅读 · 0 评论 -
CF487E Tourists
题目链接:传送门 一道纯纯的码农题 当然也是也要动脑子的 不然没有思路 前置知识:树链剖分、tarjan、圆方树、STL的灵活运用 题目要求两点之间路径上的最小权值,带修改 这个修改就十分恶心了 对于这个图中的每一个环,建一个方点 权值为这个环中所有点的最小权值 树剖ask的时候如果x和y的lca是方点,还要对x的父亲的权值再取一个min 因为它没有被统计过 对于修改 如果这个点不是根,更新它和它...原创 2019-03-14 17:59:06 · 296 阅读 · 0 评论 -
BZOJ 4196: [Noi2015]软件包管理器
题目链接:传送门 4196:[Noi2015]软件包管理器4196: [Noi2015]软件包管理器4196:[Noi2015]软件包管理器 Description Linux用户和OSX用户一定对软件包管理器不会陌生。通过软件包管理器,你可以通过一行命令安装某一个软件包,然后软件包管理器会帮助你从软件源下载软件包,同时自动解决所有的依赖(即下载安装这个软件包的安装所依赖的其它软件包),完成所有的...原创 2018-12-25 09:42:51 · 175 阅读 · 0 评论