#P2936. [USACO09JAN] Total Flow S

[USACO09JAN] Total Flow S

Description

请注意,题面中并没有说明水管是单向的还是双向的(虽然应该是双向的)。数据保证无论将水管视作单向还是双向得到的结果相同。

农夫约翰总是希望他的奶牛有足够的水,因此他绘制了一张农场上连接水井和谷仓的 N1N700N(1 \leq N \leq 700)根水管的地图。他惊讶地发现这些不同尺寸的水管连接得杂乱无章。他想计算水管的流量。

两个串联的水管允许的水流量是两个水管流量值中的最小值。例如,一个流量为 55 的水管连接到一个流量为 33 的水管,可以逻辑上简化为一个流量为 33 的水管:

+---5---+---3---+    ->    +---3---+

类似地,并联的水管允许的水流量是它们流量的总和:

   +---5---+
---+       +---    ->    +---8---+
   +---3---+

最后,一个没有连接到其他任何东西的水管可以被移除,它对最终的总流量没有贡献:

   +---5---+
---+               ->    +---3---+
   +---3---+--

管道网络中的所有水管都可以使用这些方法简化为一个总流量。

给定一张水管的地图,确定从水井 AA 到谷仓 ZZ 的流量。

考虑这个节点名称用字母标记的例子:

         +-----------6-----------+
A+---3---+B                      +Z
         +---3---+---5---+---4---+
                 C       D

管道 BCBCCDCD 可以合并:

         +-----------6-----------+
A+---3---+B                      +Z
         +-----3-----+-----4-----+
                     D

然后 BDBDDZDZ 可以合并:

         +-----------6-----------+
A+---3---+B                      +Z
         +-----------3-----------+

然后 BZBZ 的两条路径可以合并:

         B
A+---3---+---9---+Z

最后,ABABBZBZ 可以合并,得到净流量为 33

A+---3---+Z

编写一个程序读取描述为两个端点的水管集合,然后计算从 AAZZ 的净流量。测试数据中的所有网络都可以使用这里的规则简化。

管道 i 连接两个不同的节点 aia_ibib_i(节点范围均为 azAZa-z、A-Z),流量为 FiF_i1Fi1,0001 \leq F_i \leq 1,000)。注意,小写和大写的节点名称应视为不同。

形式化题意:求出 AAZZ 的最大流。

Input Format

11 行:一个整数:NN

22 行到第 N+1N+1 行:第 i+1i+1 行描述第 ii 根水管,包含两个字母和一个整数,均以空格分隔:aia_ibib_iFiF_i

Output Format

11 行:一个整数,表示从水井 AA 到谷仓 ZZ 的最大流量。

5 
A B 3 
B C 3 
C D 5 
D Z 4 
B Z 6 

3 

Hint

luogu://user/1470994
提供翻译