分块 分块往往是在一个序列上进行(当然也有树上分块)。对于一个长度为$N$的序列A,我们设一个块大小为$s$,然后按照每连续$s$个数一组分成若干组(最后一组可能不满s) 那么我们如果对区间$[l,r]$操作,就可以把区间$[l,r]$分成中间的整块和两边的不超过$2 s$个单点 一般来说我们取$s ...
分类:
其他好文 时间:
2020-02-02 21:49:28
阅读次数:
89
题意 链接:https://nanti.jisuanke.com/t/A1998 给出一个有根树(根是1),有n个结点。初始的时候每个结点的值都是0.下面有q个操作,操作有两种,操作1.将深度为L(根节点深度为0)的点的值全部增加X。操作2.查询以x为根的子树的结点值得和。其中N,Qblock。 对 ...
分类:
其他好文 时间:
2019-08-27 19:28:12
阅读次数:
98
"传送门" 基础的树上分块题。如何保证一个块内的元素在[B,3B]之间呢?这里有一个很简单的方法是直接dfs。在每次进入一棵子树之前,我们记录一下现在栈顶编号,之后在返回的时候,如果当前编号减去所记录的编号的差值要大于等于B,那就直接把它们加到一个块内。最后可能会剩余一些元素,直接压到最后一个块内即 ...
分类:
其他好文 时间:
2018-12-12 00:39:30
阅读次数:
176
"传送门" 这道题是标准的树上带修改莫队。兔哥称之为“莫队的集大成者”。 先说一下树上莫队吧。树上莫队就是把莫队搬到了树上,它的算法仍然是通过对树进行分块,使得各个元素属于一个块,之后像普通的莫队一样,按照左右端点所属的块排序。至于树上分块的做法,直接看这篇博客的 "上一篇" 就好了。 然后我们说一 ...
分类:
其他好文 时间:
2018-12-12 00:14:20
阅读次数:
207
Tree 题意: 给你一颗树, 每一个节点都有一个权值, 如果一个石头落在某个节点上, 他就会往上跳这个的点的权值步。 现在有2种操作, 1 把一个石头放在 x 的位置 询问有跳几次才跳出这棵树, 2 修改某个节点的权值。 解法:树上分块, 用dfs分好块之后。 对于每一块都处理出如果石头落在某个位 ...
分类:
其他好文 时间:
2018-08-14 11:41:13
阅读次数:
185
题意:给你一棵树,求u,v最短路径的XXX(本题是统计权值种类) 今天课上摸鱼学了一种有意思的处理路径方式(其实是链式块状树翻车了看别的),据说实际运行跑的比XX记者还快 大概就是像序列莫队那样 首先是对暴力查询的优化 第一关键字是块(树上分块),第二关键字是dfs序,这样保证了离线操作的下界最优 ...
分类:
其他好文 时间:
2018-05-17 00:50:22
阅读次数:
204
传送门 题意: 一棵树,询问子树中权值大于$k$的节点个数,修改点权值,插入新点;强制在线 一开始以为询问多少种不同的权值,那道CF的强制在线带修改版,直接吓哭 然后发现看错了这不一道树上分块水题... 用王室联邦分块的话需要维护每一个块$dfs$序最小值和最大值,并且插入操作会破坏原来的性质 不如 ...
分类:
其他好文 时间:
2017-03-18 22:36:26
阅读次数:
337
http://www.lydsy.com/JudgeOnline/problem.php?id=1086 (题目链接) 本来是来学树上分块的,没想到正解是贪心+dfs。。。 题意:求将树分为几个联通块,每个联通块大小大于B小于3B,是否可行。 Solution 题都没看就翻了题解。。发现时贪心+df ...
分类:
其他好文 时间:
2016-09-27 23:30:40
阅读次数:
378
1086: [SCOI2005]王室联邦
Time Limit: 10 Sec Memory Limit: 162 MBSec Special Judge
Submit: 1107 Solved: 662
[Submit][Status][Discuss]
Description
“余”人国的国王想重新编制他的国家。他想把他的国家划分成若干个省,每个省都由他们王室联...
分类:
其他好文 时间:
2016-05-12 21:20:58
阅读次数:
163
树分块 orz HZWER http://hzwer.com/5259.html 不知为何我原本写的倍增求LCA给WA了……学习了HZWER的倍增新姿势~ 树上分块的转移看vfk博客的讲解吧……(其实是先指向hzwer博客,再跳转vfk和KoribohG……) vfk讲的很详细,重点就在于...
分类:
移动开发 时间:
2015-01-26 01:16:41
阅读次数:
310