9268 - 最小花费

通过次数

16

提交次数

55

时间限制 : 1 秒
内存限制 : 512 MB

P 城是高山上一座比较繁华的城市,是连接周围村庄的中转站,由于P城周围山石林立地势险峻,道路建设很困难,与之连接的村庄均有且只有一条双向道路,现在P城经过许多年的城市道路建设,终于将所有的村庄连通,所有道路形成了一个巨型的树形结构,每一个村庄之间都连通。
假如你是P城的送货员,现在有一批生活物资需要你送到各个村庄,村庄有n个,为了方便你运送物资,你将这些村庄编号从1到n(出发点P为0),并且按照编号从小到大去往每个村庄送物资,由于在道路建设过程中投入非常多,经过道路时需要收费。假设第i条路有单程票和多程票,价格分别为c_1和c_2,你在运送物资过程中可能会重复走一条路,所以多程票有时候会更划算,请你计算出你从1运送到n最少需要多少费用。

输入

第一行,一行一个正整数,表示村庄的个数n。
接下来的n-1行,一行4个正整数x,y,c_1,c_2,分别表示村庄x和村庄y之间有一条道路,单程票价为c_1,多程票价为c_2。

输出

输出一行,一行一个正整数,表示最少的费用。

样例

输入

4
1 2 3 5
1 3 2 4
2 4 1 3

输出

10

输入

5
1 2 2 3
1 3 2 3
1 4 2 3
1 5 2 3

输出

11

来源

云南编程挑战赛