题目描述
树可以用来表示物种之间的进化关系。一棵“进化树”是一个带边权的树,其结点表示一个物种,两个结点之间的距离表示两个物种的差异。现在,一个重要的问题是,根据物种之间的距离,重构相应得“进化树”。
令N={1..n},用一个N上的矩阵M来定义树T。其中,矩阵M满足:对于任意的i,j,k,有M[i,j]+M[j,k]<=M[i,k]。树T满足:
1、叶结点属于集合N;
2、边权均属于非负整数;
3、dt[i,j]=M[i,j]表示树上i到j的最短路径长度。
如下矩阵M描述了一棵树。
树的重量是指树所有边权之和。对于任意给出的合法矩阵M,它所能表示树的重量是唯一确定的,不可能找到两颗不同重量的树,他们都符合M。你的任务就是,根据给定的矩阵M,计算M所表示树的重量。上图是给出的矩阵M所能表示的一棵树,这棵树的总重量是15。
输入格式
第一行,整数n(2<=n<=30)。 后面n-1行,给出的是矩阵M的一个上三角(不包含对角线),每个元素是不超过100的非负数,输入保证是合法的。
输出格式
给定矩阵M所描述的树的重量。
样例输入
样例输出