AT_gigacode_2019_g.ギガ国の道路事情
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
在“ギガ国”中有 N 个城市,编号分别为 1,2,3,…,N。
有若干城市通过道路相连。具体来说,有 M 条道路,第 i 条道路连接城市 ai 和 bi,且为双向道路。此外,通过某些道路,可以从任意一个城市到达任意另一个城市。
这里,d(i,j) 表示“城市 i 和城市 j 之间的距离”,即“仅通过道路从城市 i 到城市 j 时所经过的最少道路数”。
请计算所有不同的 2 个城市对 (x,y) 的距离 d(x,y) 的总和。
输入格式
输入以如下格式从标准输入给出:
N M a1 b1 a2 b2 : : aM bM
输出格式
输出所有城市 x,y 间距离 d(x,y) 的总和。
输入输出样例
输入#1
4 3 1 2 2 3 3 4
输出#1
10
输入#2
4 6 1 2 1 3 1 4 2 3 2 4 3 4
输出#2
6
输入#3
9 12 1 2 2 3 4 5 5 6 7 8 8 9 1 4 4 7 2 5 5 8 3 6 6 9
输出#3
72
说明/提示
限制条件
- 1≤N≤100000
- 1≤M≤100000
- N−1≤M≤N+777
- 1≤ai,bi≤N
- ai=bi
- 对于任意 (u,v),直接连接城市 u 和城市 v 的道路最多只有一条。
- 任意两个城市之间都可以通过道路到达。
- 所有输入均为整数。
部分得分
本题分为若干小题,若某小题的所有测试点均通过,则视为该小题通过。
提交代码的得分为通过的小题分数之和。
- (9 分) N≤100,M≤100
- (7 分) N≤3000,M≤3000
- (12 分) 满足 M−N=−1。
- (13 分) 满足 M−N=0。
- (28 分) 满足 M−N≤7,且对于 1≤i≤N−1,有 ai=i,bi=i+1。
- (22 分) 满足 M−N≤77。
- (9 分) 无额外限制。
注意
本题输入输出数据量较大,建议使用高效的输入输出方式(如 C++ 的 scanf/printf 等)。
样例解释 1
ギガ国的道路网络如下所示。

在该道路网络中,d(1,2)=1,d(1,3)=2,d(1,4)=3,d(2,3)=1,d(2,4)=2,d(3,4)=1,因此答案为 1+2+3+1+2+1=10。
样例解释 2
ギガ国的道路网络如下所示。

在该道路网络中,任意两城市间距离均为 1,因此答案为 6。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?