随笔分类 - 数据结构 -- 树套树
摘要:【LOJ 3146】[APIO2019]路灯(树套树) 题面 "LOJ" 题解 考场上因为某个没有判的情况导致我卡了左右,然后这题就只能匆匆了一个分暴力...... 考虑维护出每一个时刻的亮的灯的
阅读全文
摘要:【BZOJ4889】不勤劳的图书管理员(树套树) 题面 又是权限题,烦死了 "洛谷真好" 题解 分开考虑每一次交换产生的贡献。 假设交换 检查与对于区间产生的贡献 再考虑一下之间的贡献就好啦。 区间的贡献显然是区间内比他小的数的个数乘上当前位
阅读全文
摘要:【BZOJ2141】排队(树套树) 题面 "BZOJ" "洛谷" 题解 傻逼题啊。。。 裸的树套树 树状数组套线段树,每次交换的时候,考虑一下前后的贡献,先删掉贡献,再重新算一遍就好了。。 cpp include include include include include include inc
阅读全文
摘要:【SYZOJ279】滑稽♂树(树套树) 题面 "SYZOJ" "CJOJ" 题目描述 zzsyz实验楼里面种了一棵滑稽树,只有滑稽之力达到大乘期的oier才能看到。虽然我们看不到,但是还是知道一些信息: 这真的是一棵树,由n个节点,n 1条边联通。一号滑稽果同时也是整棵滑稽树的树根。 滑稽树上每个节
阅读全文
摘要:【BZOJ1146】网络管理(主席树,树状数组) 题面 "BZOJ权限题,洛谷题面" 题解 树上带修改主席树 貌似和那题很相似呀 只需要套上一个树状数组来维护修改好就好了 但是记住是用来记录主席树的标号 一定不要搞错了 每一次修改只会影响他子数的值
阅读全文
摘要:【BZOJ3196】二逼平衡树(树状数组,线段树) 题面 "BZOJ题面" 题解 如果不存在区间修改操作: 搞一个权值线段树 区间第K大 直接在线段树上二分 某个数第几大 查询一下区间的size和 某个数的前缀 先查一下他是区间第几大,再求他 1大 某个数的后缀 和上面那个有区别吗??? 现在有了区
阅读全文
摘要:【BZOJ3295】动态逆序对(线段树,树状数组) 题面 Description 对于序列A,它的逆序对数定义为满足iAj的数对(i,j)的个数。给1到n的一个排列,按照某种顺序依次删除m个元素,你的任务是在每次删除一个元素之前统计整个序列的逆序对数。 Input 输入第一行包含两个整数n和m,即初
阅读全文
摘要:【BZOJ1901】【Luogu2617】Dynamic Ranking(主席树,树状数组) 题面 神TM BZOJ权限题 "Luogu真良心" 题解 如果不考虑修改 很容易的主席树区间第K大 考虑修改 那么修改操作复杂度 因此,将区间的和利用树状数组来维护 修改复杂度降为$O(
阅读全文
摘要:【BZOJ3262】陌上花开(树套树) 题面 ~~对于权限题,我这种苦逼肯定是从别的OJ上搞的对不对???~~ "CJOJ" "洛谷" Description 有n朵花,每朵花有三个属性:花形(s)、颜色(c)、气味(m),又三个整数表示。现要对每朵花评级,一朵花的级别是它拥有的美丽能超过的花的数量
阅读全文
摘要:"题目链接,我是真的懒得调题目的格式。。。" 题解 树链剖分搞一下LCA 把线段树弄出来 这只是形式上的线段树 本质上是维护一段区间的一个堆 每次把堆插入节点, 询问的时候查询线段树上的堆的最大值就行了 但是在插入节点的时候 把节点插入到非当前树链剖分经过的节点中 这里要稍微处理一下。 cpp in
阅读全文