#abc128e. [abc128_e]Roadwork

[abc128_e]Roadwork

题目描述

有一条无限长的街道,从西到东,我们将其视为数轴。

在这条街道上安排了 NN 次道路施工。第 ii 次施工会从时间 Si0.5S_i - 0.5 到时间 Ti0.5T_i - 0.5 封锁坐标 XiX_i 处的位置。

QQ 个人站在坐标 00 处。第 ii 个人将从时间 DiD_i 开始在坐标 00 处出发,沿正方向以速度 11 行走,并在到达被封锁的位置时停止行走。

找出 QQ 个人每个人将行走的距离。

约束条件

  • 输入中的所有值都是整数。
  • 1N,Q2×1051 \leq N, Q \leq 2 \times 10^5
  • 0Si<Ti1090 \leq S_i < T_i \leq 10^9
  • 1Xi1091 \leq X_i \leq 10^9
  • 0D1<D2<...<DQ1090 \leq D_1 < D_2 < ... < D_Q \leq 10^9
  • 如果 iji \neq j 并且 Xi=XjX_i = X_j,区间 \[Si,Ti)\[S_i, T_i)\[Sj,Tj)\[S_j, T_j) 不重叠。

输入

输入数据从标准输入读取,输入格式如下:

NN QQ S1S_1 T1T_1 X1X_1 :: SNS_N TNT_N XNX_N D1D_1 :: DQD_Q

输出

打印 QQ 行。第 ii 行应包含第 ii 个人将行走的距离,如果该人将永远行走,则为 1-1


示例输入1

4 6
1 3 2
7 13 10
18 20 13
3 4 2
0
1
2
3
5
8

示例输出1

2
2
10
-1
13
-1

第一个人从时间 00 开始,以速度 11 行走,当达到被第一次施工封锁的位置时,在时间 22 停止行走。

第二个人从时间 11 开始,以速度 11 行走,当达到坐标 22 时停止。因为第一次施工已经结束,但第四次施工已开始,所以该人也在坐标 22 处停止。

第四个和第六个人在行走过程中没有遇到道路施工,所以他们将永远行走。对于这些情况的输出是 1-1