问题 5645 --兔兔的和谐图

5645: 兔兔的和谐图★★★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 11  解决: 5
[提交][状态][命题人:]

题目描述

给定一张有n个顶点、m条边的无向图。顶点的编号1从到n。
定义一张无向图是和谐的当且仅当:假设图中存在一条从l到r(l<r)的路径,则图中也存在从l到l+1,l+2,⋯,r-1的路径。
现在给出一张无向图,求至少需要添加多少条边才能将其变为和谐的。

输入

第一行包含有个两数n与m(3≤n≤200000,1≤m≤200000).
接下来的m行,每行包含两个整数,第i行的两个整数为ui与vi (1≤ui,vi≤n,ui≠vi),表示第i条边相接的顶点分别为ui与vi。
测试数据保证给定的图是一个简单图(即没有自环、任意两个顶点之间最多只有一条边直接相连) 

输出

一个整数,表示将其变为和谐图需要添加的最少边数。
样例输入
Copy
14 8
1 2
2 7
3 4
6 3
5 7
3 8
6 8
11 12
样例输出
Copy
1

提示

样例2
输入:
200000 3
7 9
9 8
4 5
输出:
0

样例1中,给定的图不是和谐图(如1<6<7,顶点1能到达顶点7,通过路径1→2→7,但顶点1不能到达顶点6)。通过添加边(2,4),就能使它成为和谐图。

样例2中,给定的图已经是和谐图了。

来源

[提交][状态]