CF1970G1.Min-Fund Prison (Easy)
普及+/提高
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
现给出一张由 n 个点 m=n−1 条边构成的树,其 m 条边为 (ui,vi) ( 1≤i≤m ),表示 ui,vi 相连。
你可以以 c 的成本在任意两个点 x,y 之间连一条边。这个操作可以进行任意次,设你操作了 k 次。
在连边操作之后,你必须删去一条割边,使得剩下的图恰由 2 个连通块组成。设两个连通块的大小为 x,y ,请问 x2+y2+kc 的最小值为何?
输入格式
第一行输入样例个数 t ( 1≤t≤105 ) 。接下来输入 t 个样例,每个样例形式如下——
每个样例的第一行包含三个整数 n,m,c ( 2≤n≤105,m=n−1,1≤c≤109 ),表示点数,边数和加边操作的成本。
接下来 m 行,每一行输入两个整数 u,v ( 1≤u,v≤n,u=v ),表示 u,v 之间有一条边。
保证对于所有输入的样例,满足 ∑n≤105,∑m≤5×105 。
输出格式
如果能够使得最后结果为两个连通块,输出 x2+y2+kc 的最小值;否则,输出 −1 。
输入输出样例
输入#1
2 2 1 3 1 2 8 7 76 3 1 3 2 2 4 2 5 4 6 4 7 7 8
输出#1
2 32
输入解题思路,AI测评打分。不知道怎么写?