随笔分类 - 图论 生成树
摘要:【题目】D. Best Edge Weight 【题意】给定n个点m条边的带边权无向连通图,对每条边求最大边权,满足其他边权不变的前提下图的任意最小生成树都经过它。n,m<=2*10^5,1<=wi<=10^9。 【算法】最小生成树+倍增LCA+并查集 【题解】首先求出图的一个最小生成树M,则所有边
阅读全文
摘要:【题意】给定无向带权图,求最小生成树数。n<=100,m<=1000,相同权值边数<=10。 【算法】最小生成树(MST),DFS 【题解】首先需要一个结论:同个图的不同MST一定满足同个权值的边数相同。 考虑kruskal算法的过程,已经统计了<x的所有边,现在考虑=x的边,根据生成树的性质一定要
阅读全文
摘要:【算法】最小生成树 【题解】 想到网络流,但是好像不能处理流量和费用的关系。 想到最短路,但好像不能处理重复选边的问题。 每条边只需要选一次,每个点就要遍历到,可以想到最小生成树。 建超级源向每个点连边,点与点连边,对n+1个点求最小生成树(MST)即可。 #include<cstdio> #inc
阅读全文
摘要:【网络流与二分图】专题链接 【图论】 图论-刘汝佳 完全三部图:图G可被分为三个顶点集,点集内的点相互均没有连边,不同点集的点之间相互均有连边。完全三部图的三元环个数是三点集点数的乘积。 无向无环图就是树。有向无环图DAG方便操作。 有环图可以tarjan缩点。 哈密顿回路(路径):每个点只经过一次
阅读全文
摘要:【算法】最小生成树 #include<cstdio> #include<algorithm> using namespace std; const int maxn=310; struct cyc{int from,to,pre,k;}e[100010]; int fa[maxn],head[max
阅读全文
摘要:【算法】最大生成树+LCA(倍增) 【题解】两点间选择一条路径最小值最大的路径,这条路径一定在最大生成树上,因为最大生成树就是从边权最大的边开始加的。 先求原图的最大生成树(森林),重新构图,然后用一个超级根连向每棵树的根。 对于每个询问,在树上跑z=LCA(x,y),答案就是x到z,z到y路上的最
阅读全文
摘要:【算法】 【算法】网络流 【算法】树 【算法】数学 ————【专题】生成树计数(矩阵树定理) ————【专题】计数问题(排列组合,容斥原理,卡特兰数) ————【算法专题】卡特兰数(计数数列) ————【专题】数论 ————【专题】概率和期望 【算法】动态规划 【算法】数据结构 ————【专题】平衡
阅读全文

浙公网安备 33010602011771号