luogu#P6199. [EER1] 河童重工

[EER1] 河童重工

题目背景

妖怪之山上生活着两种妖怪,鸦天狗和河童。从前,他们各有自己专属的交通线路,可以在妖怪之山的各个地点之间移动,但两套交通线路的维护成本实在是太高了!因此妖怪们现在想要把两套线路精简成一套。这个繁重的工程就被委托给河童重工了。

题目描述

妖怪之山上有 nn 个地点,鸦天狗和河童的两套交通线路都是分别由一些连接这些地点的无向道路组成的,每条道路有自己的长度,把这些道路看成有权边,那么他们的两套线路分别可以表示成两棵 nn 个节点的树 T1,T2T_1, T_2(有 n1n-1 条边的有边权无向连通图),河童重工现在要新建一些无向道路,新建一条无向道路 (i,j)(i,j) 的花费是 distT1(i,j)+distT2(i,j)dist_{T_1}(i,j)+dist_{T_2}(i,j)(即 T1,T2T_1,T_2iijj 的距离之和),河童重工要保证妖怪之山的任意两个节点都能只通过新修建的道路互相到达。但由于如果花费过多可能引起异变,所以他们希望这个工程的总花费最少。

荷取作为这个工程的总设计师,请你帮她算一算,修建新道路的总花费最少是多少?

输入格式

第一行一个正整数 nn,表示节点数量。

接下来有 n1n-1 行,其中第 ii 行有三个整数 $x_i, y_i, v_i(1 \leq x_i, y_i \leq n, 1 \leq v_i \leq 5000)$,表示 T1T_1 中有一条长度为 viv_i 的边,连接 xi,yix_i, y_i 两点。

接下来有 n1n-1 行,其中第 jj 行有三个整数 $x_j, y_j, v_j(1 \leq x_j, y_j \leq n, 1 \leq v_j \leq 5000)$,表示 T2T_2 中有一条长度为 vjv_j 的边,连接 xj,yjx_j, y_j 两点。

输出格式

一行一个整数表示最少的总花费。

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

10

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

8

提示

对于 100%100\% 的数据,满足 2n1052 \leq n \leq 10^5

本题共有 55 个子任务,每个子任务的限制如下:

子任务 111515 分):保证 2n10002 \leq n \leq 1000

子任务 221515 分):保证 T1,T2T_1, T_2 分别是一条链。

子任务 3355 分):保证 T1,T2T_1, T_2 除了边权完全相同(即如果将两棵树看成无边权树,那么它们是相同的)。

子任务 4455 分):保证 T2T_2 是一条链。

子任务 556060 分):无特殊限制。