A85657.Alice 的交通网络
普及+/提高
通过率:0%
时间限制:2.00s
内存限制:1024MB
题目描述
有一张由 n 个据点组成的树形交通网。第 i 个据点有正整数补给量 ai。你打算精确切断其中 k 条边,把整张网络分成 k+1 个独立区域。为了衡量“割裂代价”,我们定义每个区域的代价为该区域内补给量总和的平方;总目标是让所有区域代价之和尽可能小。
形式化地,切完后得到 k+1 个连通块,其点权和分别为 s1,s2,…,sk+1,则总代价为
Cost=i=1∑k+1si2.
请输出可达到的最小代价。
输入格式
- 第一行两个整数 n,k。
- 第二行 n 个整数 a1,a2,…,an。
- 接下来 n−1 行,每行两个整数 u,v,表示无向边 (u,v),保证这些边构成一棵树。
输出格式
输出一个整数,表示最小可能的总代价。
输入输出样例
输入#1
5 1 1 2 3 4 5 1 2 2 3 3 4 4 5
输出#1
117
输入#2
6 2 2 2 3 2 1 2 1 2 2 3 3 4 4 5 5 6
输出#2
50
说明/提示
- 1≤n≤5×103
- 0≤k≤min{30,n−1}
- 1≤ai≤104
- 1≤u,v≤n,给出的 n−1 条边保证构成一棵树