树链剖分
笑面蘑菇
这个作者很懒,什么都没留下…
展开
-
[洛谷 2146] [NOI2015]软件包管理器 --- 树链剖分
传送分析本题几乎为裸的树剖,假设初始化所有点权均为1。 对于install而言,是对树链进行操作,直接求相应区间的权值和即可,顺便将区间的点权修改为0; 对于uninstall而言,是对子树进行操作,则ans = size(子树) - sum(子树)即可,顺便将子树的点权修改为1;代码#include <cstdio>#include <cstdlib>#include <cstring>#原创 2018-03-11 20:19:36 · 105 阅读 · 0 评论 -
树上操作 --- 树链剖分 + 线段树
传送门:洛谷2590题目描述 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w。 我们将以下面的形式来要求你对这棵树完成一些操作: I. CHANGE u t : 把结点u的权值改为t II. QMAX u v: 询问从点u到点v的路径上的节点的最大权值 III. QSUM u v: 询问从点u到点v的路径上的节点的权值和 注意:从点u到点v的路径上的节点包括u和v...原创 2018-07-30 20:10:54 · 589 阅读 · 0 评论