D. 双边权最小生成树

内存限制:256 MiB 时间限制:3000 ms 输入文件: dweight.in 输出文件: dweight.out
题目类型:传统 评测方式:文本比较

题目描述

给定一张无向图,每条边有两个正整数权值。现在要你寻找图上的一棵生成树,使得生成树上两个边权的和的乘积最小。

请问最小总代价是多少。

输入格式

第一行两个正整数 n m

接下来 m 行,每行四个正整数 a,b,c,d ,表示在 a b 之间有一条两个边权分别为 c d 的边。顶点从1开始编号。

输出格式

一行,表示最小的总代价。

样例

样例输入1

4 4
1 2 1 1
2 3 2 100
3 1 4 1
1 4 2 1```
#### 样例输出1

21

**样例1解释**

在这个图中,我们选取1-2,1-4, 1-3这三条边作为最小生成树的边。

由于每条边都存在两个权值,我们选取易总取法是1,1,1的权值,剩余未取权值为1,2,4, 两个边权和为3和7,其乘积为21,可证明为最小值。

数据范围与提示

对于30%的数据, m≤20

对于60%的数据, n≤50,m≤80

对于100%的数据, n≤200,m≤300 ,保证答案不超过 2^{31}-1 ,所有边权为正整数。