#P16375. [2024年南京集训]跳棋4

[2024年南京集训]跳棋4

题目描述

给定一棵有 nn 个节点的树,树边带权,每条边的权值是一个三元组。

ii 条边的权值记为

ei=(ei,1,ei,2,ei,3).e_i=(e_{i,1},e_{i,2},e_{i,3}).

定义函数 win(x,y)\operatorname{win}(x,y),其中

x=(x1,x2,x3),y=(y1,y2,y3).x=(x_1,x_2,x_3),\qquad y=(y_1,y_2,y_3).

函数值如下:

  • x2<y2x_2<y_2x3<y3x_3<y_3,则

    win(x,y)=x1;\operatorname{win}(x,y)=x_1;
  • x2>y2x_2>y_2x3>y3x_3>y_3,则

    win(x,y)=y1;\operatorname{win}(x,y)=y_1;
  • 否则

    win(x,y)=0.\operatorname{win}(x,y)=0.

显然,win\operatorname{win} 函数满足交换律。

对于一个三元组序列

a1,a2,,ak,a_1,a_2,\ldots,a_k,

定义该序列的权值为

max1i<kwin(ai,ai+1).\max_{1\le i<k}\operatorname{win}(a_i,a_{i+1}).

特别地,当 k=1k=1 时,序列的权值为 00

一条树上路径的权值,定义为该路径依次经过的所有边的三元组权值所组成序列的权值。

求树上所有无向路径的权值之和。

输入格式

第一行包含一个正整数 nn,表示树的节点数。

接下来 n1n-1 行,第 ii 行包含四个整数

u, v, ei,1, ei,2,u,\ v,\ e_{i,1},\ e_{i,2},

表示节点 uu 与节点 vv 之间存在第 ii 条边,且该边三元组的第三个分量满足

ei,3=i.e_{i,3}=i.

保证序列

{ei,1}i=1n1\{e_{i,1}\}_{i=1}^{n-1}

{ei,2}i=1n1\{e_{i,2}\}_{i=1}^{n-1}

均为 1,2,,n11,2,\ldots,n-1 的一个排列。

输出格式

输出一行一个整数,表示答案。

样例 1

输入

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

输出

9

样例 2

输入

7
1 2 3 4
2 3 6 2
2 4 1 3
2 5 4 6
3 6 2 1
5 7 5 5

输出

44

数据范围与提示

  • 对于 25%25\% 的数据,n1000n\le 1000

  • 对于 75%75\% 的数据,n105n\le 10^5

  • 对于全部测试数据,

    1n3×105.1\le n\le 3\times 10^5.

    并保证 {ei,1}\{e_{i,1}\}{ei,2}\{e_{i,2}\} 均为 1,2,,n11,2,\ldots,n-1 的一个排列。