luogu#P7528. [USACO21OPEN] Portals G

[USACO21OPEN] Portals G

题目描述

Bessie 位于一个由 NN 个编号为 1N1\dots N 的结点以及 2N2N 个编号为 12N1\cdots 2N 的传送门所组成的网络中。每个传送门连接两个不同的结点 uuvvuvu≠v)。可能有多个传送门连接同一对结点。

每个结点 vv 与四个不同的传送门相连。与 vv 相连的传送门列表由 pv=[pv,1,pv,2,pv,3,pv,4]p_v=[p_{v,1},p_{v,2},p_{v,3},p_{v,4}] 给出。

你的当前位置可以用有序对(当前结点,当前传送门)表示;即一个有序对 (v,pv,i)(v,p_{v,i}) ,其中 1vN1\le v\le N 以及 1i41\le i\le 4。你可以使用以下任一操作来改变你的当前位置:

    1. 由穿过当前传送门来改变当前结点。
    1. 改变当前传送门。在每一个结点上,列表的前两个传送门是配对的,后两个传送门也是配对的。也就是说,如果你的当前位置是 (v,pv,2)(v,p_{v,2}),你可以转而使用传送门 (v,pv,1)(v,p_{v,1}),反之亦然。类似地,如果你的当前位置是 (v,pv,3)(v,p_{v,3}),你可以转而使用传送门 (v,pv,4)(v,p_{v,4}),反之亦然。没有其他改变传送门的方式(例如,你不能从传送门 pv,2p_{v,2} 转去传送门 pv,4p_{v,4} )。

总共有 4N4N 个不同的位置。不幸的是,并不一定每一个位置都可以从另外的每一个位置经过一系列操作而到达。所以,以 cvc_v 哞尼的代价,你可以以任意顺序重新排列与 vv 相邻的传送门列表。在此之后,列表中的前两个传送门互相配对,同时后两个传送门也互相配对。

例如,如果你将与 vv 相邻的传送门以 [pv,3,pv,1,pv,2,pv,4][p_{v,3},p_{v,1},p_{v,2},p_{v,4}] 的顺序重新排列,这意味着如果你位于结点 vv

  • 如果你当前位于传送门 pv,1p_{v,1} ,你可以转而使用传送门 pv,3p_{v,3},反之亦然。
  • 如果你当前位于传送门 pv,2p_{v,2} ,你可以转而使用传送门 pv,4p_{v,4},反之亦然。 你不再能够从传送门 pv,1p_{v,1} 转至传送门 pv,2p_{v,2},或从传送门 pv,3p_{v,3} 转至 pv,4p_{v,4} ,反之亦然。

计算修改这一网络使得每一个位置都可以从另外的每一个位置到达所需要花费的哞尼的最小数量。输入保证存在至少一种修改网络的合法方式。

输入格式

输入的第一行包含 NN

以下 NN 行每行描述一个结点。第 v+1v+1 行包含五个空格分隔的整数 cv,pv,1,pv,2,pv,3,pv,4c_v,p_{v,1},p_{v,2},p_{v,3},p_{v,4}

输入保证对于每一个 vvpv,1,pv,2,pv,3,pv,4p_{v,1},p_{v,2},p_{v,3},p_{v,4} 各不相同,且每个传送门出现在恰好两个结点的邻接表中。

输出格式

输出一行,包含修改这一网络使得每一个位置都可以从另外的每一个位置到达所需要花费的哞尼的最小数量。

5
10 1 4 8 9
11 1 2 5 6
12 9 10 2 3
3 4 3 6 7
15 10 8 7 5
13

提示

样例解释

重新排列结点 1144 的邻接表就已足够。这需要总计 c1+c4=13c_1+c_4=13 哞尼。我们可以使 p1=[1,9,4,8]p_1=[1,9,4,8] 以及 p4=[7,4,6,3]p_4=[7,4,6,3]

数据范围与约定

2N1052\le N\le 10^51cv1031\le c_v\le 10^3