题目:http://codeforces.com/contest/949/problem/C 把一个点指向修改它会影响到的点就可以做了; 有取模,所以多出一些要注意的地方,首先是可能出现环,所以需要 tarjan 求边双; 其次,边集数组的大小应该开成两倍,因为取模可能导致一对 ci 互相连边; 然 ...
分类:
其他好文 时间:
2018-07-07 23:08:11
阅读次数:
189
Kruskal算法核心是加边,先把所有边按照权值从小到大排序,然后在剩下的所有没有被选过的边中,找到最小的边,如果和已经选取的边构成回路则放弃,选取次小边,直到选取了n-1条边为止,这样所有点就都连通了。 每次从边集中选取的权值最小的边的两个顶点如果属于不同的树,就把他们合并(把这条边加入子图),反 ...
分类:
其他好文 时间:
2018-07-06 12:19:32
阅读次数:
213
【模板】割点 割点集合:一个顶点集合V,删除该集合的所有定点以及与这些顶点相连的边后,原图不连通,就称集合V为割点集合 点连通度:最小割点集合中的顶点数 边连通度:最小割边集合中的边数 割点:割点集合中唯一的一个元素 Tarjan求缩点: 一个点为缩点的条件: 1.该点为根,搜索树中有大于1个子树 ...
分类:
其他好文 时间:
2018-07-04 10:35:00
阅读次数:
168
图的基本概念 图的定义 图是由顶点集合V和边集合E组成的。分为有向图和无向图。 图的基本术语 邻接 顶点的度、入度、出度 路径和路径长度 自回路和多重图 完全图 子图(注:图的子图必须首先满足图的定义) 连通图和连通分量 生成树 有向树和生成森林 权和网 图的类型定义 有向图的抽象数据类型定义 AD ...
分类:
其他好文 时间:
2018-06-05 19:58:33
阅读次数:
219
题目 mhy12345学习了二分图匹配,二分图是一种特殊的图,其中的点可以分到两个集合中,使得相同的集合中的点两两没有连边。 图的“匹配”是指这个图的一个边集,里面的边两两不存在公共端点。 匹配的大小是指该匹配有多少条边。 二分图匹配我们可以通过匈牙利算法得以在O(VE)时间复杂度内解决。 mhy1 ...
分类:
其他好文 时间:
2018-05-21 14:49:40
阅读次数:
166
题目链接 "BZOJ2001" 题解 CDQ分治神题。。。 难想难写。。 比较朴素的思想是对于每个询问都求一遍$BST$,这样做显然会爆 考虑一下时间都浪费在了什么地方 我们每次求$BST$实际上就只有一条边不同,我们实际浪费了很多时间在处理相同的边上 那就考虑分治 对于一个待修改的边集,我们将其权 ...
分类:
其他好文 时间:
2018-05-21 12:35:14
阅读次数:
202
传送门:here 简述题意: 给定一张$ n$个点,$ m$条边$ (2<=n,m<=5*10^5)$的无向连通图 有$ k(1<=k<=5*10^5)$次询问 每次询问一个边集$ S(\sum\limits_{i=1}^k|S_i|<=5*10^5)$,判断这些边能否共存于原图的某棵最小生成树上 ...
分类:
其他好文 时间:
2018-05-07 23:02:35
阅读次数:
198
Description "题库链接" 给你 $n+1$ 个节点的一棵树,节点编号为 $0\sim n$ , $0$ 为根。边集为 $\mathbb{E}=\left\{(u,v)\big|\forall i\in[1,n],\left(\left\lfloor\frac{i}{k}\right\rf ...
分类:
其他好文 时间:
2018-05-01 13:58:57
阅读次数:
164
"转载:最小生成树" Kruskal算法 此算法可以称为“加边法”,初始最小生成树边数为0,每迭代一次就选择一条满足条件的最小代价边,加入到最小生成树的边集合里。 1. 把图中的所有边按代价从小到大排序; 2. 把图中的n个顶点看成独立的n棵树组成的森林; 3. 按权值从小到大选择边,所选的边连接的 ...
分类:
其他好文 时间:
2018-05-01 13:55:36
阅读次数:
164
开场写easy(有预感要FST) 然后medium就卡住了。 我只知道$n$个点的生成树个数是$n^{n-2}$ 接下来直接狗带…… $Problem 250pts$ 水题,直接枚举然后记录答案(我大概是因为精度问题被HACK了) $Problem 500Pts$ 给定一个边集,求符合条件的生成树的 ...
分类:
其他好文 时间:
2018-04-17 11:43:02
阅读次数:
201