#785. Bố cục (LAYOUT)

Bộ nhớ: 512 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

FJ có N con bò (2\le N\le 1000) , được đánh số từ 1\ldots N . Các con bò sẽ xếp thành một hàng theo thứ tự số hiệu (có thể có nhiều con bò ở cùng một vị trí). Nói cách khác, giả sử con bò số i nằm tại vị trí P_{\!\;i} , thì P_{\,1}\le P_{\,2}\le \ldots\le P_{\!\;N} .

Một số con bò là bạn tốt của nhau, chúng hy vọng khoảng cách giữa chúng nhỏ hơn hoặc bằng một số nhất định. Một số con bò là kẻ thù, chúng hy vọng khoảng cách giữa chúng lớn hơn hoặc bằng một số nhất định.

Cho M_L cặp bạn tốt cùng khoảng cách tối đa mong muốn giữa chúng, và M_D cặp kẻ thù cùng khoảng cách tối thiểu mong muốn giữa chúng (1\le M_L, M_D\le 10^4) .

Hãy tính: Nếu thỏa mãn tất cả các điều kiện trên, khoảng cách lớn nhất giữa con bò số 1 và con bò số N ( P_{\!\;N}-P_{\,1} ) là bao nhiêu.

Dữ liệu:

  • Dòng đầu tiên: Ba số nguyên N, M_L, M_D , cách nhau bởi dấu cách.
  • M_L dòng tiếp theo (từ dòng 2 đến M_L+1 ): Mỗi dòng gồm ba số nguyên A, B, D , cách nhau bởi dấu cách, biểu thị P_B-P_A\le D .
  • M_D dòng tiếp theo (từ dòng M_L+2 đến M_L+M_D+1 ): Mỗi dòng gồm ba số nguyên A, B, D , cách nhau bởi dấu cách, biểu thị P_B-P_A\ge D .
  • Đảm bảo 1\le A<B\le N, 1\le D\le 10^6 .

Kết quả:

  • Một dòng chứa một số nguyên.
  • Nếu không có phương án hợp lệ, xuất \texttt{-1} .
  • Nếu có phương án hợp lệ nhưng khoảng cách giữa bò số 1 và bò số N có thể lớn vô hạn, xuất \texttt{-2} .
  • Ngược lại, xuất khoảng cách lớn nhất giữa con bò số 1 và con bò số N .

Ví dụ:

Dữ liệu:

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

Kết quả:

27

Giới hạn: 2\le N\le 1000, 1\le M_L, M_D\le 10^4, 1\le L, D\le 10^6 .