A5543 | 「一本通 3.1 练习 1」新的开始
时间限制1s
内存限制512MB
通过 / 提交0/0
题目描述
发展采矿业当然首先得有矿井,小 FF 花了上次探险获得的千分之一的财富请人在岛上挖了 $n$ 口矿井,但他似乎忘记考虑的矿井供电问题……
为了保证电力的供应,小 FF 想到了两种办法:
1. 在这一口矿井上建立一个发电站,费用为 $v$(发电站的输出功率可以供给任意多个矿井)。
2. 将这口矿井与另外的已经有电力供应的矿井之间建立电网,费用为 $p$。
小 FF 希望身为「NewBe_One」计划首席工程师的你帮他想出一个保证所有矿井电力供应的最小花费。
为了保证电力的供应,小 FF 想到了两种办法:
1. 在这一口矿井上建立一个发电站,费用为 $v$(发电站的输出功率可以供给任意多个矿井)。
2. 将这口矿井与另外的已经有电力供应的矿井之间建立电网,费用为 $p$。
小 FF 希望身为「NewBe_One」计划首席工程师的你帮他想出一个保证所有矿井电力供应的最小花费。
输入格式
第一行一个整数 $n$,表示矿井总数。
第 $2\sim n+1$ 行,每行一个整数,第 $i$ 个数 $v_i$ 表示在第 $i$ 口矿井上建立发电站的费用。
接下来为一个 $n\times n$ 的矩阵 $p$,其中 $p_{i,j}$ 表示在第 $i$ 口矿井和第 $j$ 口矿井之间建立电网的费用(数据保证有 $p_{i,j}=p_{j,i}$,且 $p_{i,i}=0$)。
第 $2\sim n+1$ 行,每行一个整数,第 $i$ 个数 $v_i$ 表示在第 $i$ 口矿井上建立发电站的费用。
接下来为一个 $n\times n$ 的矩阵 $p$,其中 $p_{i,j}$ 表示在第 $i$ 口矿井和第 $j$ 口矿井之间建立电网的费用(数据保证有 $p_{i,j}=p_{j,i}$,且 $p_{i,i}=0$)。
输出格式
输出仅一个整数,表示让所有矿井获得充足电能的最小花费。
输入输出样例
输入 #1
4 5 4 4 3 0 2 2 2 2 0 3 3 2 3 0 4 2 3 4 0
输出 #1
9
对于 $30\%$ 的数据:$1\le n\le50$;
对于 $100\%$ 的数据:$1\le n\le 300,0\le v_i, p_{i,j}\le 10^5$。
对于 $100\%$ 的数据:$1\le n\le 300,0\le v_i, p_{i,j}\le 10^5$。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?