#P15563. [Nsi2025十年级]LATINAS拉丁姑娘
[Nsi2025十年级]LATINAS拉丁姑娘
题目描述
Kyusho 和 Urosh 踏上了前往玻利维亚寻找拉丁姑娘的旅程。虽然他们去玻利维亚旅行这件事本身已经足够写成一篇 Codeforces 博客,但他们并不知道接下来会遇到什么。事实证明,除了巨大的海拔落差、长达 12 小时的路线以及著名的由巴拉圭囚犯修建的 “Death road” 之外,玻利维亚的公路网络连接得相当稀疏。
我们可以把玻利维亚的地图表示为 个城市,以及连接这些城市的 条无向道路。每条道路连接两个不同的城市,并且任意两个城市之间最多只有一条道路。如果任意两个城市之间都能通过若干条道路相互到达,则称这些城市构成一个连通网络。令人惊讶的是,玻利维亚的道路网络是连通的。
Kyusho 和 Urosh 不希望任何意外情况(例如雪崩或集会)阻碍他们的任务,因此他们想知道有多少条道路 满足下面的性质:
如果封锁城市 和 ,并移除所有与这两个城市相连的道路,那么剩下的 个城市将不再构成连通网络。
请你编写程序 latinas,根据给定的道路网络求出这样的道路条数。
输入格式
第一行输入两个整数 和 ,分别表示城市数量和道路数量。
接下来 行,每行输入两个整数 ,表示城市 和城市 之间有一条无向道路。
输出格式
输出一行一个整数,表示满足条件的道路数量。
数据范围
子任务
| 子任务 | 分值 | 依赖子任务 | 附加限制 |
|---|---|---|---|
| 1 | 7 | - | |
| 2 | 8 | 1 | |
| 3 | 31 | 1, 2 | |
| 4 | 15 | - | |
| 5 | 39 | 1-4 | 无 |
只有通过某个子任务的所有测试点以及它依赖的所有子任务,才能获得该子任务分数。
样例 1
输入
4 5
1 2
2 3
3 4
4 1
1 3
输出
1
解释
封锁道路 的两个端点城市 和 后,剩余图中城市 和城市 分别属于两个不同的连通块。
样例 2
输入
6 7
1 2
2 4
2 6
3 5
6 1
4 3
2 5
输出
4
解释
满足条件的道路为 、、 和 。