分治
文章平均质量分 92
Ice Ship
2019届大学生。
展开
-
[YZOJ]P3290-暴力-性质题
链接题意描述 给定一个h×wh\times w 的网格图,m个互不相交(定义相交为:∃A∈Reca,A∈Recb\exists A\in Rec_a ,A\in Rec_b 且 ∃A∈Reca,A∉Recb\exists A\in Rec_a ,A\not\in Rec_b)的矩形,n个点对。 当两点可以不经过矩形相互到达时,称这个点对合法。 求合法的点对数。 题解 最初的想法就是连接合法原创 2017-10-19 16:05:18 · 464 阅读 · 0 评论 -
CDQ分治和二维偏序
参考资料来源 链接:__stdcall问题特征对于需要一系列修改或查询操作的问题,我们将其看作一个序列,并对其分维度处理。 对其中一维排序,再以递归的形式进行问题分治。由于序列其他维度不有序,每次分治[L,R]为[L,M]和[M+1,R],分治左边之后要考虑左子区间的修改对右子区间查询的影响。逆序对问题最简单的CDQ分治就是逆序对问题。 问题描述:对于一个数列,求出满足i<j且ai>aji<j原创 2017-11-03 21:27:50 · 2341 阅读 · 0 评论 -
[BZOJ]P3295-动态逆序对
BZOJ YZOJ我们可以预处理出每一个点所包含的逆序对数k(i),删除的时候把这个值减去就可以了。问题在于之前的操作可能已经把当前要减去的逆序对数包含了。考虑一个操作序列。在当前对答案减去k(i)后,只需加上当前点与之前操作删掉的点存在的逆序对数就好了。我们知道当前操作为A,满足操作B在A之前,B所删除点和A所删除点满足逆序对关系就可以对操作A的答案加上1。于是问题转化为操作序列上的逆序对问题。原创 2017-11-05 20:01:37 · 430 阅读 · 1 评论