08 2024 档案
摘要:最小生成树,一般我们会想到Kruskal或Prim,但是如果要求任意子图(仅限于包含部分结点和连接这些结点的所有完整的边)的最小生成树并且查询量很大呢?假设此处结点数量小于 。 首先可以想到状态压缩,预处理出所有子图的最小生成树,但是这样如果 逼近 就不行了。状
阅读全文
摘要:如果我既有区间乘法又有区间加法,我应该怎么办呢? 这时候需要写两个标记。假设只写一个标记。 标记加法:此时对于乘法操作,因为是将 乘以 ,这样子显然一个懒惰标记做不到。 标记乘法:那我加法咋办? 那两个标记怎么用呢?首先假设加法标记为 ,乘法标
阅读全文
摘要:上一篇文章我们讲了线段树的最基本的操作。如果有一种操作叫做区间加法呢?这个时候显然可以依次单点修改,但是时间复杂度太高了。所以可以考虑优化,由于思考过程可能很长,此处直接引入懒惰标记。 懒惰标记就是在对一颗树的所有节点进行某种统一操作时,只对根节点做一个标记表示它的子树都要进行这个操作,但是懒惰标记
阅读全文