小 L 负责一个刚竣工的住宅社区的网络建设规划。社区共有 n 栋楼,每栋楼都需要接入互联网。网络建设有两种方式:
小 L 希望用最少的总费用,使所有楼都接入互联网。请帮小 L 求出这个最小总费用。
输入共 2n+1 行。
第一行包含一个正整数 n,表示楼栋数量。
接下来 n 行,第 i 行包含一个正整数 W_i,表示第 i 栋楼独立安装路由设备的费用。
接下来 n 行,第 i 行包含 n 个非负整数,其中第 j 个数为 P_{i,j},表示在第 i 栋楼与第 j 栋楼之间铺设连线的费用(P_{i,i}=0)。
输出一行,包含一个整数,表示使所有楼接入网络的最小总费用。
3 5 3 4 0 7 1 7 0 6 1 6 0
8
4 3 5 2 4 0 8 4 9 8 0 6 3 4 6 0 7 9 3 7 0
12
8 4 9 8 7 10 3 11 6 0 2 20 20 20 20 20 20 2 0 2 20 20 20 20 20 20 2 0 3 20 20 6 20 20 20 3 0 2 4 20 20 20 20 20 2 0 9 20 5 20 20 20 4 9 0 2 3 20 20 6 20 20 2 0 2 20 20 20 20 5 3 2 0
20
最优方案:
总费用 3+4+1=8。可以验证不存在费用更低的方案。
对于所有测试数据,保证:1 \leq n \leq 300,1 \leq W_i \leq 10^5,0 \leq P_{i,j} \leq 10^5,且 P_{i,j}=P_{j,i},P_{i,i}=0。
| 测试点编号 | n |
|---|---|
| 1 | n=4 |
| 2 | n=10 |
| 3, 4 | n \leq 50 |
| 5, 6 | n \leq 100 |
| 7 \sim 10 | n \leq 300 |