AT_arc032_2.[ARC032B] 道路工事
普及+/提高
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
在大工的“チョーさん”的小镇上,道路建设正在进行中。チョーさん的小镇有 N 个交叉路口和 M 条道路,每条道路都是双向连接两个不同的交叉路口。不方便的是,从某个交叉路口出发,并不一定能通过道路到达其他交叉路口。
チョーさん的建筑公司希望修建一些连接不同交叉路口的新道路,使得从 N 个任意一个交叉路口出发,都可以通过道路到达其他任意交叉路口。
请你回答,至少需要修建多少条新道路,才能使得从任意一个交叉路口出发,都可以通过道路到达其他任意交叉路口。如果已经可以从任意一个交叉路口出发到达其他所有交叉路口,则输出 0。
输入格式
输入将以以下格式从标准输入中给出。
N M
a1 b1
a2 b2
⋮
aM bM
- 第 1 行包含两个整数 N(表示チョーさん小镇的交叉路口数量,1≤N≤100,000)和 M(表示已有道路的数量,0≤M≤100,000),以空格分隔。
- 接下来的 M 行,每行包含两个整数 ai,bi(1≤ai,bi≤N),表示第 i 条道路连接的两个交叉路口,以空格分隔。
- 不会有连接同一对交叉路口的多条道路。即对于任意 i=j,都有 ai=aj 或 bi=bj。
输出格式
请在第 1 行输出需要新建的最少道路数。
请不要忘记输出末尾的换行符。
输入输出样例
输入#1
4 2 1 2 1 3
输出#1
1
输入#2
6 4 1 2 2 3 1 3 5 6
输出#2
2
说明/提示
样例解释 1
交叉路口 1、2、3 彼此之间通过道路相连,但交叉路口 4 没有与其他路口相连。例如,只需新建一条连接交叉路口 1 和 4 的道路即可满足要求。

由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?