3873 - 终止连通

题目描述

N 个城市按照编号 1 \sim N 的顺序从左向右排列在一条直线,由 N - 1 条双向铁路连接。相邻的 2 个城市之间通过铁路连接。

某天爆发了战争,城市之间因为立场不同决定终止连通,共有 M 个来自城市的请求。

请求 U_i, V_i 表示编号为 U_i 的城市和编号为 V_i 的城市之间发生了战争,请通过移除一些铁路来实现:使得这两个城市之间的无法连通。

请你编程计算出,最少需要移除多少段铁路,才能满足 M 个请求。

输入

第一行读入两个整数 NM,用空格隔开。

接下来 M 行,每行包含两个整数,表示第 U_iV_i 城市之间希望终止连通。

输出

输出最少需要断开的铁路数量。

样例

输入

5 2
1 4
2 5

输出

1

输入

9 5
1 8
2 7
3 5
4 6
7 9

输出

2

输入

9 24
6 8
3 8
1 3
5 6
3 5
1 7
1 8
2 4
8 9
3 7
1 2
6 7
5 9
2 9
4 6
2 3
4 8
1 4
6 9
2 5
2 8
7 9
3 6
5 8

输出

6
说明

样例 1 解释

这些请求可以通过拆除连接编号为 2 的城市和编号为 3 的城市之间的铁路来满足。

数据范围

对于 25\% 的数据,满足 2 \leq N \leq 201 \leq M \leq 200

对于 100\% 的数据,满足 2 \leq N \leq 10^5 1 \leq M \leq 10^5 1 \leq U_i < V_i \leq N ,所有 (U_i, V_i) 互不相同。

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 0
通过人数 0
金币数量 2 枚
难度 基础


上一题 下一题