摘要:
【题意】选择去掉无向图中的某个点,使得无向图连通分支数最大,输出这个最大数。有三种情况:1、无向图无边时,最大数=点数-1;2、无向图有边并不存在割点时,最大数=原图连通分支数-13、无向图有边并且存在割点时, 求出去除某割点后,该割点所在连通分支被分解成的小连通分支的个数sub[i],找出max,则最大数=原图连通分支数+max-1。Tarjan算法求无向图的连通分支、割点及对应的sub[i]。View Code 阅读全文
posted @ 2013-03-05 21:12
byluoluo
阅读(244)
评论(0)
推荐(0)
摘要:
View Code1#include<stdio.h>2#include<string.h>34#defineN10105#defineMN*N67intlow[N],dfn[N],sub[N],index;8inttail[N],eNum;9structEdge10{11inte,next;12}edge[M];1314intMin(intx,inty)15{16if(x>y)returny;17returnx;18}19intMax(intx,inty)20{21if(x>y)returnx;22returny;23}24voidAdd(intx,int 阅读全文
posted @ 2013-03-05 20:15
byluoluo
阅读(258)
评论(0)
推荐(0)
摘要:
【题意】求sink点,即其可达的点均有一条路径回到该点,按序号升序输出。先求各强连通分量,出度为0的强连通分量中的点即为所求的sink点。(若出度不为0,即某强连通分量有向外的边,必没有“回”路,那么该强连通分量内的点均不是sink点)【代码】View Code 阅读全文
posted @ 2013-03-05 13:22
byluoluo
阅读(111)
评论(0)
推荐(0)

浙公网安备 33010602011771号