高级暴力技巧
&*^*&
这个作者很懒,什么都没留下…
展开
-
acm-CDQ分治
引言 CDQ分治主要用于解决一类分治过程中分治区间彼此存在互相影响的问题。这类问题最典型的就是三维偏序问题,本文主要从CDQ的核心思想出发,先分析基本问题,再给出难度更大的例题。 CDQ的核心思想非常简单,就是先分治,再合并并且计算分治部分彼此之间的贡献,递归进行这个过程即可。与普通的分治算法唯一的区别在于计算合并的部分,CDQ在合并的时候,假设有两个区间,那么就需要计算这两个区间之间彼此的贡献,一般来说是计算左区间的所有元素对右区间的所有元素的贡献。 具体怎么计算贡献呢?这取决于问题的描述,下面将以三原创 2020-08-14 18:23:16 · 227 阅读 · 0 评论 -
acm-根号分治在各个领域的应用
引言 对于acm常有一些题目让人十分棘手,并且没有专门的 算法来解决这些问题。这时候一般都最好从暴力着手来 思考解决方案,而根号分治可以说是一种优雅的暴力。 本文将通过例题的方式从各个领域来剖析根号分治的核心思想。 图论 例题一 题目来源:2020上海高校程序设计竞赛暨第18届上海大学程序设计联赛夏季赛(同步赛)D题:旅行 简化题意:给定一张n<=100000个点,m<=n+5000条边的有向图(随机生成)和q<=300000个询问,每次询问u点是否能够到达v点,能输出Good,否原创 2020-08-05 23:57:48 · 445 阅读 · 0 评论