#L0826. 排队距离约束求解

排队距离约束求解

题目描述

nn 头牛按编号顺序排成一列,编号从 11nn。每头牛站在数轴上的某个位置(可以有多头牛在同一位置)。

给定两类约束:

  • MLML 条友好约束:牛 AA 和牛 BBA<BA \lt B)之间的距离不超过 DD
  • MDMD 条排斥约束:牛 AA 和牛 BBA<BA \lt B)之间的距离至少为 DD

另外,由于排队顺序固定,编号小的牛不能排在编号大的牛后面(即位置 posiposi+1pos_i \le pos_{i+1})。

请计算在满足所有约束的前提下,牛 11 和牛 nn 之间的最大距离。如果无解输出 1-1,如果距离可以任意大输出 2-2

输入格式

第一行三个整数 N,ML,MDN, ML, MD,分别表示牛的数量、友好约束数和排斥约束数。

接下来 MLML 行,每行三个整数 A,B,DA, B, D1A<BN1 \le A \lt B \le N),表示牛 AA 和牛 BB 的距离不超过 DD

再接下来 MDMD 行,每行三个整数 A,B,DA, B, D1A<BN1 \le A \lt B \le N),表示牛 AA 和牛 BB 的距离至少为 DD

输出格式

输出一行一个整数:无解输出 1-1,距离无上界输出 2-2,否则输出牛 11 和牛 nn 的最大距离。

样例

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

提示

对于 100%100\% 的数据,2N10002 \le N \le 10001ML,MD100001 \le ML, MD \le 100001D1061 \le D \le 10^6

样例解释:最优方案是牛 1 在位置 0,牛 2 在位置 7,牛 3 在位置 10,牛 4 在位置 27。

难度 普及+/提高-
通过率
尝试 0
已通过 0
ID
1554
类型
传统题
Time Limit
1000ms
Memory Limit
128MiB
上传者