#P1169. 危桥排查

    ID: 181 传统题 1000ms 128MiB 尝试: 0 已通过: 0难度: 普及+/提高− ← 上一题 下一题 → 随机一题 上传者: 标签 图论 Tarjan 割边 DFS
显示设置

危桥排查

题目描述

群岛上有 nn 座岛,编号 1∼n1\sim n,岛与岛之间架设了 mm 座双向桥梁。

如果某座桥坍塌后,原本可以互相到达的两座岛变得无法互相到达,这座桥就称为「危桥」。

请找出所有危桥,并按两端编号从小到大排序后输出(先比小的一端,再比大的一端)。

输入格式

第一行两个整数 n,mn,m。

接下来 mm 行,每行两个整数 u,vu,v,表示一座桥梁。保证 1≤u<v≤n1\le u<v\le n,不存在重复的桥梁。

输出格式

第一行一个整数 kk,表示危桥数量。

接下来 kk 行,每行两个整数,表示一座危桥的两端(保证小的在前)。若 k=0k=0,则只输出一行 0。

输入输出样例 #1

输入 #1

4 4
1 2
2 3
3 4
4 2

输出 #1

1
1 2

说明

样例中删掉 11 号桥后 11 号岛被孤立,它是唯一一座危桥。

数据范围

  • 对于 100%100\% 的数据,1≤n≤1051\le n\le 10^5,0≤m≤2×1050\le m\le 2\times 10^5。