#P4878. [USACO05DEC] Layout G

    ID: 5645 远端评测题 1000ms 128MiB 尝试: 0 已通过: 0 显示难度普及+/提高− 上传者: 标签>2005USACO最短路差分约束差分

[USACO05DEC] Layout G

题目描述

正如其他物种一样,奶牛们也喜欢在排队打饭时与它们的朋友挨在一起。FJ 有编号为 1N1\dots NNN 头奶牛 (2N1000)(2\le N\le 1000)。奶牛们始终需要按照编号顺序来排队。奶牛们很笨拙,因此可能有多头奶牛在同一位置上。

有些奶牛是好基友,它们希望彼此之间的距离小于等于某个数。有些奶牛是情敌,它们希望彼此之间的距离大于等于某个数。

给出 MLM_L 对好基友的编号,以及它们希望彼此之间的距离小于等于多少;又给出 MDM_D 对情敌的编号,以及它们希望彼此之间的距离大于等于多少 (1ML,(1\le M_L, MD104)M_D\le 10^4)

请计算:如果满足上述所有条件,11 号奶牛和 NN 号奶牛之间的距离最大为多少。

输入格式

第一行:三个整数 N,ML,MDN, M_L, M_D,用空格分隔。

2ML+12\dots M_L+1 行:每行三个整数 A,B,DA, B, D,用空格分隔,表示 AA 号奶牛与 BB 号奶牛之间的距离须 D\le D。保证 1A<BN,1\le A<B\le N, 1D1061\le D\le 10^6

ML+2ML+MD+1M_L+2\dots M_L+M_D+1 行:每行三个整数 A,B,DA, B, D,用空格分隔,表示 AA 号奶牛与 BB 号奶牛之间的距离须 D\ge D。保证 1A<BN,1\le A<B\le N, 1D1061\le D\le 10^6

输出格式

一行,一个整数。如果没有合法方案,输出 -1. 如果有合法方案,但 11 号奶牛可以与 NN 号奶牛相距无穷远,输出 -2. 否则,输出 11 号奶牛与 NN 号奶牛间的最大距离。

4 2 1
1 3 10
2 4 20
2 3 3
27

提示

样例解释:

共有 44 头奶牛。11 号奶牛和 33 号奶牛必须相距不超过 1010 个单位长度,22 号奶牛和 44 号奶牛必须相距不超过 2020 个单位长度,而 22 号奶牛与 33 号奶牛相互讨厌,必须相距不少于 33 个单位长度。

最佳方案是将奶牛们按以下坐标放置于一条数轴上:11 号奶牛在 00 处,22 号奶牛在 77 处,33 号奶牛在 1010 处,44 号奶牛在 2727 处。