相框
P 大的基础电路实验课十分无聊。每次实验,T 君总能提前完成,但管理员不允许他提前离开,他只能坐在实验室里打发时间。
实验的内容无非是用焊锡将若干导线与电阻、电容、电感等元器件焊接起来。于是,每次完成实验后,T 君都会利用导线焊接出一些形状奇特的作品。
然而,T 君并不满足于这些奇形怪状的作品。他打算拆解现有作品,并将其重新焊接成一个规整的环形,作为自己的相框。在改造过程中,必须使用原作品中的全部导线。
T 君可以进行以下两种操作:
- 烧熔一个焊点,使连接在该焊点上的导线重新分组。具体而言,可以将这些导线划分为若干组:同一组中的导线仍然相连,不同组之间的导线彼此分离;
- 将两根导线的自由端焊接在一起。自由端是指当前未与任何其他导线相连的一端。
例如,可以先烧熔焊点 ,使导线 与导线 、 分离;再烧熔焊点 ,使导线 、 与导线 、 分离;随后烧熔焊点 ,使导线 与导线 、 分离;最后将导线 与导线 的自由端焊接起来。
请计算 T 君将原有作品改造成相框所需的最少操作次数。
输入格式
第一行包含两个整数 和 ,分别表示原有作品中的焊点数量和导线数量。
焊点编号为 至 。
接下来 行,每行包含两个整数,表示一根导线两端所连接的焊点编号。如果某一端未与任何焊点相连,则该端的编号为 。
原有作品不一定连通。
某些焊点可能只有一根导线与之相连。在该导线的这一端与其他导线相连之前,不允许烧熔这些焊点。
某些焊点可能没有任何导线与之相连。由于 T 君只关心导线,因此可以忽略这些焊点。
输出格式
输出一个整数,表示将原有作品改造成相框所需的最少操作次数。
样例输入
6 8
1 2
1 3
3 4
1 4
4 6
5 6
4 5
1 5
样例输出
4
数据范围
- ,;
- 对于 的数据,;
- 对于 的数据,。
来源与许可
本题题面与测试数据整理自 BZOJ 2503。
样例 1
输入
6 8
1 2
1 3
3 4
1 4
4 6
5 6
4 5
1 5
输出
4