摘要: 题意 略(这东西应该都能看懂) 思路 先排序,把所有e=1的操作放在前面,然后再进行e=0的操作,在进行e=1的操作的时候,我们只要把它约束的两个变量放在同一个集合里面即可。再e=0,即存在一条不相等的约束条件,对于它约束的两个变量,如果在一个集合里面,那就不可能满足!如不相等的约束条件都满足,那就 阅读全文
posted @ 2020-07-19 14:06 jasony_sam 阅读(104) 评论(0) 推荐(1) 编辑
摘要: 二维树状数组及(不会用到的)三维树状数组 前置芝士 一维树状数组(lowbit) 二维树状数组 二维树状数组涉及到两种基本操作,修改矩阵中的一个点,查询子矩阵的和 首先是修改点的操作: void update(int x,int y,int z){ //坐标为(x,y)的点增加z for(int i 阅读全文
posted @ 2020-07-19 14:04 jasony_sam 阅读(168) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2020-07-19 14:03 jasony_sam 阅读(6) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2020-07-19 14:02 jasony_sam 阅读(6) 评论(1) 推荐(0) 编辑
摘要: 离散化 蒟蒻因为即将学习主席树,发现离散化这个东东不太会,所以写一篇博客记录一下。 概念 离散化,就是把无限空间中有限的个体映射到有限的空间中去,以提高算法的时空效率。(来自百度百科) 作用 ​ 很多算法的复杂度与数据中的最大值有关,比如树状数组和纯用数组实现的一对一标记。时常会遇到这种情况:数据的 阅读全文
posted @ 2020-07-19 14:01 jasony_sam 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 树上启发式合并/dsu on tree 前置芝士 启发式合并和树链剖分的部分知识。(不会的去这里搜) 因为要在一颗树上进行启发式合并,所以要找最优的方法,即优雅的暴力(雾 它可以让 \(O(n^2)\) 变为 \(O(n\log n)\) (证明 你就想想启发式合并就完了) 概念 树上启发式合并(d 阅读全文
posted @ 2020-07-19 13:59 jasony_sam 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 树链剖分 前置芝士 ​ 就像它的名字,树链剖分是在一棵树上进行,在讲解中还会用到线段树和dfs,如果不会,打开链接自行搜索(主要是线段树的博客没做,还有不要问我为什么这算知识)。 一个节点的重儿子,为其更大的一颗子树的根节点。从这个点连向重儿子的边我们称为重边。 由重边连续连起来的点和边就组成了重链 阅读全文
posted @ 2020-07-19 13:58 jasony_sam 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 启发式合并 概念 启发式算法是基于人类的经验和直观感觉,对一些算法的优化。 作用 可以启发式合并更加高级的数据结构,如 \(heap,~set,~splays\) 等 复杂度计算 每次把个数少的合并到个数多的?复杂度 \(O(min(m1,m2))\) 可是我们注意到,每次合并后个数为合并前少的部分 阅读全文
posted @ 2020-07-19 13:57 jasony_sam 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 线段树合并 前置芝士 动态开点线段树和权值线段树 乍一看,线段树合并和上面那两个奇怪的东西有什么关系。 其实,线段树合并的全称为动态开点权值线段树合并( 雾 如果对上面那两个奇怪的东西不理解可点开链接进行搜索(大雾 优点 ​ 动态开点线段树有着一些优点,比如说当你让某个节点继承另一个节点的左儿子或者 阅读全文
posted @ 2020-07-19 13:56 jasony_sam 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 动态开点线段树 前置芝士 众所周知,普通线段树空间复杂度是 \(O(n*4)\) 所以当n很大的时候,如果正常的去建一颗线段树,开4倍n空间显然会炸内存 怎么办呢? 这个时候,动态开点线段树出现了。 概念 ​ 动态开点线段树是一类特殊的线段树,与普通的线段树不同的是,每一个节点的左右儿子不是该点编号 阅读全文
posted @ 2020-07-19 13:54 jasony_sam 阅读(1677) 评论(2) 推荐(3) 编辑
摘要: 权值线段树 前置芝士 ​ 顾名思义,权值线段树也算是一种线段树,它的本质也是线段树。所以在学习权值线段树之前,如果对普通线段树的掌握不太熟,可以先去这里去搜索线段树进行学习。 ​ 而权值线段树的进一步本质则是用线段树维护桶。同理,如果不知道桶是什么可以到这里进行搜索。 概念 ​ 我们知道,普通线段树 阅读全文
posted @ 2020-07-19 13:53 jasony_sam 阅读(199) 评论(3) 推荐(1) 编辑