AT_arc083_b [ABC074D] Restoring Road Network
题目描述
在曾经存在的高桥王国中,有 $N$ 座城市,其中一些城市对之间通过双向道路连接。
已知该王国的道路网络满足以下条件:
- 人们只能通过道路在城市之间通行。任意两座城市之间都可以互相到达,必要时可以经过其他城市。
- 不同道路的长度可能不同,但所有道路的长度都是正整数。
考古学家 Snuke 在高桥王国的遗迹中发现了一个 $N$ 行 $N$ 列的表格 $A$。他认为,这张表格记录了王国中各城市之间沿道路行驶的最短距离。
请判断是否存在一个道路网络,使得对于任意 $u$ 和 $v$,表格 $A$ 中第 $u$ 行第 $v$ 列的整数 $A_{u,v}$,恰好等于从城市 $u$ 到城市 $v$ 的最短路径长度。
如果存在这样的道路网络,求所有道路长度之和的最小可能值。
输入格式
第一行输入一个整数 $N$。
接下来 $N$ 行,每行输入 $N$ 个整数,其中第 $i$ 行第 $j$ 个整数为 $A_{i,j}$。
输出格式
如果不存在满足条件的道路网络,输出 `-1`。
否则,输出所有道路长度之和的最小可能值。
说明/提示
**样例 #1 解释**
以下道路网络满足条件:
- 城市 $1$ 与城市 $2$ 之间有一条长度为 $1$ 的道路。
- 城市 $2$ 与城市 $3$ 之间有一条长度为 $2$ 的道路。
- 城市 $3$ 与城市 $1$ 之间没有直接连接的道路。
**样例 #2 解释**
由于城市 $1$ 到城市 $2$ 存在一条长度为 $1$ 的路径,城市 $2$ 到城市 $3$ 也存在一条长度为 $1$ 的路径,因此城市 $1$ 到城市 $3$ 存在一条长度为 $2$ 的路径。
然而,根据表格,城市 $1$ 到城市 $3$ 的最短距离必须为 $3$。因此,不存在满足条件的道路网络。
**数据范围**
- $1\le N\le 300$。
- 当 $i\ne j$ 时,$1\le A_{i,j}=A_{j,i}\le 10^9$。
- $A_{i,i}=0$。