#ABC128E. Roadwork

Roadwork

题目描述

There is an infinitely long street that runs west to east, which we consider as a number line.

There are NN roadworks scheduled on this street. The ii-th roadwork blocks the point at coordinate XiX_i from time Si0.5S_i - 0.5 to time Ti0.5T_i - 0.5.

QQ people are standing at coordinate 00. The ii-th person will start the coordinate 00 at time DiD_i, continue to walk with speed 11 in the positive direction and stop walking when reaching a blocked point.

Find the distance each of the QQ people will walk.

有一条自西向东的无限长的街道,我们把它看作一条数线。

这条街上有 NN 项道路工程。从时间 Si0.5S_i - 0.5 到时间 Ti0.5T_i - 0.5ii -th 的道路工程挡住了坐标 XiX_i 处的点。

QQ 人站在坐标 00 处。 ii 这个人将在 DiD_i 时从坐标 00 开始,以 11 的速度继续向正方向行走,并在到达阻塞点时停止行走。

求每个 QQ 人行走的距离。

输入格式

输入内容按以下格式标准输入:

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

输出格式

打印 QQ 行。 ii (行)应包含 ii (个)人行走的距离,或者 1-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

说明

数据规模与约定

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

样例 11 解释

第一个人在时间 00 从坐标 00 开始行走,在时间 22 到达被第一个道路工程阻挡的点时,在坐标 22 处停止行走。

第二个人在时间 11 从坐标 00 开始行走,在时间 33 到达坐标 22 。第一项道路工程已经结束,但第四项道路工程已经开始,因此这个人也在坐标 22 处停止行走。

第四个人和第六个人在行走过程中没有遇到任何道路施工,因此他们一直行走。这些情况的输出结果为 1-1