割點
題目描述
給出乙個n個點,m條邊的無向圖,求圖的割點。
輸入格式:
第一行輸入n,m
下面m行每行輸入x,y表示x到y有一條邊
輸出格式:
第一行輸出割點個數
第二行按照節點編號從小到大輸出節點,用空格隔開
輸入樣例#1:
複製
6 7輸出樣例#1:1 21 3
1 42 5
3 54 5
5 6
複製
1說明:n,m<=1000005
#include #include #include #include #include #include #include #include using namespace std;
const int maxn=100005;
int n,m,cnt=0;
int indexx;
int root;
int ans[maxn];
int flag[maxn];
vectore[maxn<<1|1];
int low[maxn],num[maxn];
void dfs(int cur,int father)
if(cur==root&&child>=2)
}else if(u!=father)}}
}int main()
memset(flag,0,sizeof flag);
memset(num,0,sizeof num);
memset(low,0,sizeof low);
root=1,cnt=0;
for(int i=1;i<=n;i++)
int j=0;
for(int i=1;i<=n;i++)
}printf("%d\n",cnt);
if(ans[0]) printf("%d",ans[0]);//這裡有三個測試點,當割點個數為0的時候後面就不要輸出了
for(int i=1;i//printf("\n");
return 0;
}
P3388 模板 割點(割頂)
割點 給出乙個n個點,m條邊的無向圖,求圖的割點。輸入格式 第一行輸入n,m 下面m行每行輸入x,y表示x到y有一條邊 輸出格式 第一行輸出割點個數 第二行按照節點編號從小到大輸出節點,用空格隔開 輸入樣例 1 6 7 1 21 3 1 42 5 3 54 5 5 6 輸出樣例 1 1 5 n,m均...
P3388 模板 割點(割頂)
n 給定一張無向圖g g g,求圖的割點 s ol utio nsolution soluti on判斷條件 非搜尋樹起點x xx,任意乙個子節點y yy,滿足dfn x l ow y dfn x low y dfn x l ow y 搜尋樹起點rtrt rt,至少兩個子節點y yy,滿足dfn x...
P3388 模板 割點(割頂)
割點 給出乙個n個點,m條邊的無向圖,求圖的割點。輸入格式 第一行輸入n,m 下面m行每行輸入x,y表示x到y有一條邊 輸出格式 第一行輸出割點個數 第二行按照節點編號從小到大輸出節點,用空格隔開 輸入樣例 1 複製6 7 1 21 3 1 42 5 3 54 5 5 6 輸出樣例 1 複製1 5 ...