atcoder#ABC277H. [ABC277Ex] Constrained Sums

[ABC277Ex] Constrained Sums

配点 : 600600

問題文

以下の条件すべてを満たす長さ NN の整数列 X=(X1,X2,,XN)X = (X_1, X_2, \ldots ,X_N) が存在するか判定し、存在する場合 11 通り構成してください。

  • すべての 1iN1 \leq i \leq N に対して 0XiM0 \leq X_i \leq M
  • すべての 1iQ1 \leq i \leq Q に対して LiXAi+XBiRiL_i \leq X_{A_i} + X_{B_i} \leq R_i

制約

  • 1N100001 \leq N \leq 10000
  • 1M1001 \leq M \leq 100
  • 1Q100001 \leq Q \leq 10000
  • 1Ai,BiN1 \leq A_i, B_i \leq N
  • 0LiRi2×M0 \leq L_i \leq R_i \leq 2 \times M
  • 入力はすべて整数

入力

入力は以下の形式で標準入力から与えられる。

NN MM QQ

A1A_1 B1B_1 L1L_1 R1R_1

A2A_2 B2B_2 L2L_2 R2R_2

\vdots

AQA_Q BQB_Q LQL_Q RQR_Q

出力

問題文中の条件すべてを満たす整数列が存在する場合、そのうちの 11 つの X1,X2,,XNX_1, X_2, \ldots, X_N を空白区切りで出力せよ。存在しない場合は -1 を出力せよ。

4 5 3
1 3 5 7
1 4 1 2
2 2 3 8
2 4 3 0

X=(2,4,3,0)X = (2,4,3,0) のとき X1+X3=5X_1 + X_3 = 5, X1+X4=2X_1 + X_4 = 2, X2+X2=8X_2 + X_2 = 8 よりすべての条件を満たします。この他、X=(0,2,5,2)X = (0,2,5,2), X=(1,3,4,1)X = (1,3,4,1) などもすべての条件を満たすため、これらを出力しても正解となります。

3 7 3
1 2 3 4
3 1 9 12
2 3 2 4
-1

すべての条件を満たす数列 XX は存在しません。