繁杂的道路
时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte
描述
A城是由许多小城镇组成的,在A城的各个小城镇间建了许多道路(道路是双向的)。这些道路是A城便利交通的基础。游客通过这些道路可以在任意两个城镇之间往返。最近市长对这座城市错综复杂的交通感到厌烦,决定重新规划A城的道路。所以他派给你一个任务:留下尽可能少的道路,保证任意两个城镇之间还是可达的。将其他多余的道路全部拆除。
输入
第一行为两个正整数n(1<=n<=100)和m。n表示A城中小城镇的数量。M表示现有道路的数量。接下来是m行,每行用两个数v1和v2表示一条从城镇v1到城镇v2的道路。( v1!=v2),两个城镇之间至多有一条道路。
输出
输出最多能够拆除的道路数量。
样例输入
5 7
4 6
1 2
1 3
1 4
2 3
2 4
3 4
样例输出
3
这道题看上去是图论的题目,其实很简单,唬人的。
解答: