修路兴邦
描述
有n个城市,在两个城市之间修建双向道路的成本是其两个城市GDP的总和。
请计算所有城市连通(任何两个城市都可以相互到达)的最低费用。
输入
第一行T(1<=T<=10)代表T组数据
每组数据有两行
第一行n(1<=n<=100000)代表有n个城市
第二行n个数字代表各个城市的GDP(1<=GDP<=10^9)
输出
共T行,每行一个数字代表最低费用
输入样例 1
2
4
1 2 3 4
1
1
输出样例 1
12
0
提示
行末没有空格
很容易发现两个城市之间最低成本就是直接两个城市相连。
容易想到 : 以一个成本最少的城市作为源点,让其与其他城市相连,成本必定最小。
设a1 + a2 + …… + an == sum, 设 a1 成本最小,那么总成本为-> (a1 + a2) + (a1 + a3) + ………… + (a1 + an) == a1 * (n-1) + (a2 + a3 + …… + an