
树链剖分
lemondinosaur
转圈圈 不停转圈圈 然后摔倒
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
#树链剖分,线段树#SP6779 GSS7 - Can you answer these queries VII
题目 在一棵nnn个节点的树上满足两种操作: 把树上一条简单路径展开成一个数列,求这个数列的最大子段和(可以为空) 把树上一条简单路径上的点权同时加上一个值 分析 这道题其实也就是最大子段和的树上版,大同小异,妙不可言 特别是求答案的部分,由于是一条链,所以必须用两个东东去分别存储最大前缀和、最大后缀和以及最大子段和,等到最后再合并,还是我太菜了 代码 #include <cstdi...原创 2019-11-03 19:02:39 · 182 阅读 · 0 评论 -
#主席树,树链剖分#洛谷 3313 旅行
题目 分析 首先如果没有宗教的限制,那么这道题就是线段树裸题,但是既然有了宗教的限制,那么得开10510^5105个线段树,那显然是不行的,想到了主席树,综合它们的空间,时间复杂度O(mlogn2)O(mlogn^2)O(mlogn2) 代码 #include <cstdio> #include <cctype> #define rr register #define ...原创 2019-10-29 20:05:01 · 180 阅读 · 0 评论 -
#树链剖分,线段树#洛谷 5127 子异和
题目 多组询问,每次把树上的一条简单路径中的点权扔入集合中,求该集合的子异和,子异和定义为所有非空子集的异或和的和,而且需要支持区间异或 分析 考虑某一位满足异或和为1的子集数,若设异或某一位为kkk为1的数量为hkh_khk,那么结果应为cntk=2n−hk×∑i=1⌊hk2⌋C(n,2i−1)=2n−1cnt_k=2^{n-h_k}\times \sum_{i=1}^{\lfloor\fr...原创 2019-10-25 20:25:07 · 139 阅读 · 0 评论 -
洛谷【X ROUND 2】模拟赛心得&未完的解题报告
我好菜啊前言洛谷 5436 T1缘分题目分析代码洛谷 5440 T2奇迹题目分析代码洛谷 5437 约定题目分析(乱搞)分析(正确)后续 前言 其实突然发现不应该在期末考试前两天比赛的,但是,唉 洛谷 5436 T1缘分 题目 找出不超过nnn的正整数a,ba,ba,b,使lcm(a,b)lcm(a,b)lcm(a,b)最大 分析 8min:lcm(a,b)=abgcd(a,b)lcm(a,b...原创 2019-07-04 19:10:19 · 691 阅读 · 0 评论 -
#树链剖分,线段树#洛谷 4315 月下毛景树
代码 #include <cstdio> #include <cctype> #define rr register using namespace std; const int N=100101; struct node{int y,w,next;}e[N<<1]; int w[N<<2],lazy[N<<2],lyza[N<&l...原创 2019-08-23 22:11:44 · 185 阅读 · 0 评论 -
Wolfycz的娱乐赛 From Luogu 解题报告
比赛链接 洛谷 5135 painting 分析 可以发现对于opt=1opt=1opt=1时,答案为C(n,m)C(n,m)C(n,m),对于opt=0opt=0opt=0时,可以认为是不降序列,那么使它变成递增序列,取值变成了[1∼n+m][1\sim n+m][1∼n+m],答案为C(n+m−1,m)C(n+m-1,m)C(n+m−1,m),所以就是这样的,这是我比赛唯一切掉的QaQ 代...原创 2019-10-06 09:53:52 · 154 阅读 · 0 评论