双连通
文章平均质量分 79
九野的博客
这个作者很懒,什么都没留下…
展开
-
HDU 4738 双连通模版题
题意:给定n个点,m条无向边下面m行表示u , v ,边权值求所有桥中最小的桥的权值,如不存在输出-1若图一开始就不连通或最小权值为0则输出1附赠一大波测试数据: #include #include #include #include #include #include #include #include原创 2013-09-15 17:42:55 · 3165 阅读 · 0 评论 -
Uva 12587 Reduce the Maintenance Cost 边双连通+树形dp+贪心
题目链接:点击打开链接题意:给定n个点m条边的无向图下面n个数表示每个点的权值。下面m条边 (u,v) dis对于每条边,这条边的权值为 原图上删除这条边后,有N对点被分离, 则点权为 N*dis然后:让边两端任意一个点的点权上 加上这条边的权值使得:最大的点权最小。问:最小的答案。思路:1原创 2014-10-31 23:58:41 · 1603 阅读 · 0 评论 -
Codeforces 104C Cthulhu dfs暴力 || 点双连通缩点
题目链接:点击打开链接题意:给定n个点m条边的无向图问图中是否存在 有且仅有一个简单环和一些树,且这些树的root都在这个简单环上。瞎写了个点双。。==#include #include #include #include #include #include #include using namespace std;#define N 105#define M原创 2014-08-31 22:49:24 · 1653 阅读 · 0 评论 -
ZOJ 2588 Burning Bridges 求无向图桥 边双连通裸题
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1588#include#include#include#include#includeusing namespace std;#define N 10050#define M 200005int n,m;//n个点 m条边struct Edge{原创 2014-04-28 15:44:31 · 1590 阅读 · 0 评论 -
UVA 315 求割点数
题目链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=251测模版:#include #include #include #include #include #include using namespace std;#define原创 2014-04-29 12:37:33 · 1645 阅读 · 0 评论 -
点双连通模版 求割点,点双缩点
两种缩点的模版原创 2014-01-14 19:21:46 · 2024 阅读 · 0 评论 -
Uva 10765 点双连通求删任意点后剩下图中的连通分量数
题目链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&category=&problem=1706&mosmsg=Submission+received+with+ID+13561937题意:给定n个点 常量m下面给出无向边(输入-1 -1表示终止加边)得到原创 2014-04-29 17:08:39 · 1531 阅读 · 0 评论 -
POJ 2942 圆桌骑士 点双连通+二分图判定
#include#include#include#include#include#include#include#include#define N 1005#define M 1000005using namespace std;struct Edge{ int from, to;};int n, m;int pre[N], is原创 2014-01-14 19:10:56 · 1799 阅读 · 0 评论 -
POJ 3694 双连通缩点+LCA+并查集
题意:给定n个点m条边的无向图Q个询问:问加上这条边后图中还有多少桥。注意询问不是独立的(加了边在后面都有效)思路:先缩点得到缩点树,加上一条边后[u, LCA(u,v), v] 成环,则删掉这里的点,并把集合向上合并#include #include #include #include #include #include #include原创 2014-01-24 18:08:17 · 1619 阅读 · 0 评论 -
POJ 2117 双连通求割点所连接的(连通分量数)
题意:给定n个点 m条边的无向图(点标从0开始) 问:去掉一个点,使得最终图的连通分量数最大输出最大的连通分量数 思路:求出所有割点(当且仅当删掉的点为割点时,连通分量数会增加)注意:若图中没有边时(m==0) 全都是孤立点,则删点后连通分量数会减少( ans= n-1) #include#include#include#include原创 2014-01-16 14:34:34 · 1833 阅读 · 0 评论 -
POJ 3352&&3177 双连通缩点求缩点树叶子节点数
题意:给定n个点m条边的无向图(保证连通)问:至少加多少条边可以使图为双连通图)思路:双连通图即所有点都属于至少一个环中显然我们先把图缩点得到一棵缩点树,问题就转成在缩点树上加最少多少条边使得图为双连通图。对于n个节点的无根树,至少要 (1+left)/2 条边(left为叶子节点数) #include#include#include#includ原创 2014-01-14 21:06:14 · 1469 阅读 · 0 评论 -
POJ 1438 混合图定定向为强连通图 双连通
题意:给定n个点 m条边 (点标从1开始)下面m行表示边 u v k (k=1为单向,k=2为双向)问:把尽可能多的无向边定向使得最终图保持强连通的性质(任意两点可达)答案保证有解。输出所有无向边最终的情况u v k (k = 2表示不定向 , k = 1表示定向为 u->v)思路:1、tarjan:由于图中既有有向边,又有无向边,那么先把有向边视为无向,用双连原创 2014-01-22 20:48:09 · 2575 阅读 · 1 评论 -
POJ 1515 无向连通图定向边改造为强连通 边双连通
题意:n个点m条无向边(保证图连通)问:把尽量多的无向边定向,使得最终图保持强连通的特性。输出:案例数最终图的所有单向边 ( 若是不能被定向的无向边则输出u,v && v,u表示2条无向边 )# 思路:显然桥是不能被定向的,双连通求出桥。去掉桥后,对于每个连通分支,可以dfs遍历一遍把经过的边定向,这样一定保证连通分量是强连通的。 #inclu原创 2014-01-14 15:03:31 · 3024 阅读 · 2 评论 -
HDU 4612 桥数-缩点后树的直径
题意:给定n个点 m条边的 无向连通图问:桥数-缩点后树的直径憋了好久终于1Y了#pragma comment(linker, "/STACK:1024000000,1024000000")#include#include#include#include#include#include#includeusing namespace std;#原创 2013-12-03 20:56:56 · 1842 阅读 · 2 评论 -
边双连通模版
//默认图连通且不存在重边 重边判断:bian[i][j]>1vectorG[N];struct node{ int u,v,d;}edge[N];//割边不会超过n条int edgecut; //初始化0void PUT(int u,int v,int d){ node E={u,v,d}; edge[edgecut++]=E;}int原创 2013-09-15 18:40:33 · 1846 阅读 · 1 评论