HDU 4587 邊雙聯通

2021-06-25 08:06:23 字數 730 閱讀 7631

題意:給你n個點,m條邊,要你刪除兩個點以及和這兩個點直接相連的邊,問你剩下的圖中,最大的連通分量的數目。

分析:我們可以列舉每個點,然後看剩下的圖中是否有割點,這裡需要注意,乙個單獨的連通分量刪除就沒有了,坑點在這裡!!!

**:#include #include #include #include #include using namespace std;

const int maxn=5005;

const int maxm=1000005;

struct edgenode

edge[maxm];

int head[maxn],cnt,flag;

int dfn[maxn],low[maxn],cixu,n,gds[maxn];

void add(int x,int y)

void init()

void dfs(int u,int fa)

}else if(v!=fa)

low[u]=min(low[u],dfn[v]);

}}int tarjan()

}int mn=-1;

if(sum==n-1)sum--;

for(int i=1;i<=n;i++)mn=max(mn,gds[i]);

sum+=mn;

return sum;

}int main()

for(i=1;i<=n;i++){

for(j=0;j

hdu 4005 邊雙聯通 LCA

題意 有一幅圖,現在要加一條邊,加邊之後要你刪除一條邊,使圖不連通,費用為邊的費用,要你求的是刪除的邊的最小值的最大值 每次都可以刪除一條邊,選最小的刪除,這些最小中的最大就為答案 首先要進行縮點,把圖縮為一棵樹,因此,加入一條邊後圖就會存在乙個環,環中的任何一條邊刪除後都不會導致圖不連通 之後找一...

邊雙聯通分量

首先什麼是邊雙聯通分量?邊雙連通分量是指,在 無向圖 中刪除任意一條邊依舊聯通的聯通塊 之前講過強連通分量,這裡邊雙聯通分量的做法也需要利用tarjan演算法獲得邊雙聯通分量。對於邊雙聯通分量中還有乙個概念,就是橋。橋指的是 刪除該邊圖不再連通。對應的另乙個概念是 割點 割點的的是 如果除去此節點和...

邊雙聯通分量

noip最後一次學習 敲板子 橋 如果這條邊去掉後圖的聯通分量增加,則這條邊稱為橋。邊雙聯通分量 如果乙個對於乙個圖的某個子圖,任意兩點至少存在兩條 邊不重複 的路徑,則這個子圖是邊雙聯通分量。很顯然,任意乙個邊雙中不含有橋。除橋外每條邊都僅屬於乙個邊雙。如果把原圖中所有橋刪除,每個聯通分量都是原圖...