2286. 道路与图书馆 (Roads and Libraries)​

1000ms 256MB 中等 图的基本应用
题目描述
HackerLand 有 $n$ 个城市(编号从 $1$ 到 $n$),初始时城市之间没有任何道路,也没有图书馆。 你可以选择: - 在任意城市建一座图书馆,花费为 $c_{\text{lib}}$。 - 在给定的候选道路中修复一条双向道路,花费为 $c_{\text{road}}$。 如果一个城市的居民所在的连通分量中至少含有一座图书馆,则该城市的居民可以使用图书馆。请计算使所有城市的居民都能使用图书馆的最小总成本。
输入格式
- 第一行包含一个正整数 $q$ ($1 \le q \le 10$),表示测试用例的数量。 - 对于每个测试用例: - 第一行包含四个正整数 $n, m, c_{\text{lib}}, c_{\text{road}}$。 - 接下来 $m$ 行,每行包含两个正整数 $u, v$,表示一条可以修复的双向通道。
输出格式
- 对每个测试用例,输出一行一个整数,表示最小的总花费。
样例 1
输入 (Input)
2
3 3 2 1
1 2
3 1
2 3
6 6 2 5
1 3
3 4
2 4
1 2
2 3
5 6
输出 (Output)
4
12
- $1 \le q \le 10$ - $1 \le n \le 10^5$ - $0 \le m \le \min\left(10^5, \frac{n(n-1)}{2}\right)$ - $1 \le c_{\text{road}}, c_{\text{lib}} \le 10^5$
自测终端 stdin → stdout
输入 stdin
CtrlShiftEnter
输出 stdout

                
错误 stderr

                
CtrlEnter提交
自动保存已开启
操作成功
wzs_oj@kernel:~ — wzs-sh
guest@wzsoj:~$
刷新页面 F5
复制 Ctrl+C
粘贴 Ctrl+V
搜索题目
站点公告
今日神谕
CSP 倒计时
排行榜
我的提交
Esc 关闭 Enter 跳转 支持模糊匹配数字