AT_past20_o 超過クエリ

Description

長さ $ N $ の整数列 $ A=(A_1,A_2,\ldots,A_N) $ があります。はじめ $ A $ の各要素は $ 0 $ です。時刻 $ i=1,2,\ldots,T $ において、 $ A $ に対して以下の操作が行われます。 - $ A_{L_i},A_{L_i+1},\dots,A_{R_i} $ にそれぞれ $ V_i $ を加える $ Q $ 個のクエリが与えられるので順に処理してください。 $ i $ 番目のクエリは以下で説明されます。 - 整数 $ l_i,r_i,x_i $ が与えられる。 $ A_{l_i}+A_{l_i+1}+\dots+A_{r_i} $ が $ x_i $ 以上になる最初の時刻を出力する。ただし、時刻 $ T $ における $ A_{l_i}+A_{l_i+1}+\dots+A_{r_i} $ が $ x_i $ 未満のときは `-1` を出力する。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ T $ $ Q $ $ L_1 $ $ R_1 $ $ V_1 $ $ L_2 $ $ R_2 $ $ V_2 $ $ \vdots $ $ L_T $ $ R_T $ $ V_T $ $ l_1 $ $ r_1 $ $ x_1 $ $ l_2 $ $ r_2 $ $ x_2 $ $ \vdots $ $ l_Q $ $ r_Q $ $ x_Q $

Output Format

$ Q $ 行出力せよ。 $ i $ 行目には $ i $ 番目のクエリに対する答えを出力せよ。

Explanation/Hint

### Sample Explanation 1 数列 $ A $ は以下のように変化します。 - 時刻 $ 1 $ : $ (0,0,3,3,3,0) $ - 時刻 $ 2 $ : $ (2,2,5,5,3,0) $ - 時刻 $ 3 $ : $ (2,6,9,9,7,4) $ 各クエリに対する答えは以下のようになります。 - クエリ $ 1 $ : $ A_2+A_3+A_4+A_5 $ の値が初めて $ 15 $ 以上になるのは時刻 $ 2 $ です。 - クエリ $ 2 $ : $ A_4+A_5 $ の値が初めて $ 5 $ 以上になるのは時刻 $ 1 $ です。 - クエリ $ 3 $ :時刻 $ 3 $ における $ A_6 $ の値が $ 5 $ 未満であるため `-1` を出力します。 - クエリ $ 4 $ : $ A_1+A_2+A_3+A_4+A_5+A_6 $ の値が初めて $ 30 $ 以上になるのは時刻 $ 3 $ です。 ### Constraints - $ 1\leq N\leq 10^5 $ - $ 1\leq T,Q\leq 10^5 $ - $ 1\leq L_i\leq R_i\leq N $ - $ 1\leq V_i\leq 10^5 $ - $ 1\leq l_i\leq r_i\leq N $ - $ 1\leq x_i\leq 10^{15} $ - 入力は全て整数