#P1266. 空调

空调

题目描述

吉尔东拥有一个烤肉餐厅。餐厅的客人很多,所以很多人都喜欢在访问餐厅之前预约。

吉尔东试图满足顾客的需求,甚至记住了所有顾客喜欢的温度范围!查看预约列表,他希望通过控制餐厅的温度来满足所有顾客。

餐馆有一台空调,有3种状态:关闭、加热和冷却。当关闭时,餐馆的温度保持不变。当加热时,温度每分钟提高1度。最后,当冷却时,温度每分钟下降1度。吉尔东可以在任何整数分钟内多次改变状态。初始时,空调是关闭状态。

每个顾客都有三个值:ti t_i ——第 i i 个顾客访问餐厅的时间(以分钟为单位),li l_i ——他们偏好的温度范围的下限,和 hi h_i ——偏好的温度范围的上限。

顾客满意的条件是他们访问餐厅时的温度在他们偏好的范围内。形式上,第 i i 个顾客满意的条件是在第 ti t_i 分钟内的温度在 li l_i hi h_i (含)之间。

给定初始温度、预约顾客的访问时间列表和他们的偏好温度范围,你要帮助他判断是否可以使所有顾客都满意。

输入格式

每个测试点包含一个或多个测试用例。第一行为测试用例的数量 q q ( 1q500 1 \le q \le 500 )。接下来是测试用例的描述。

每个测试用例的第一行包含两个整数 n n m m ( 1n100 1 \le n \le 100 , 109m109 -10^9 \le m \le 10^9 ),其中 n n 是预约顾客的数量,m m 是餐厅的初始温度。

接下来,有 n n 行。第 i i 行包含三个整数 ti t_i , li l_i , 和 hi h_i ( 1ti109 1 \le t_i \le 10^9 , 109lihi109 -10^9 \le l_i \le h_i \le 10^9 ),其中 ti t_i 是第 i i 个顾客访问的时间,li l_i 是他们偏好的温度范围的下限,hi h_i 是偏好的温度范围的上限。偏好的温度范围是包含在内的。

顾客按照他们的访问时间的非递减顺序给出,当前时间是 0 0

输出格式

对于每个测试用例,如果可以满足所有顾客,则输出 “YES” 。否则,输出 "NO"。

样例 #1

样例输入 #1

4
3 0
5 1 2
7 3 5
10 -1 0
2 12
5 7 10
10 16 20
3 -100
100 0 0
100 -50 50
200 100 100
1 100
99 -100 0

样例输出 #1

YES
NO
YES
NO

在第一个案例中,吉尔东可以通过以下方式控制空调使所有顾客满意:

在第 0 0 分钟,改变状态为加热(温度为 0)。

在第 2 2 分钟,改变状态为关闭(温度为 2)。

在第 5 5 分钟,改变状态为加热(温度为 2,第 1 1 个顾客满意)。

在第 6 6 分钟,改变状态为关闭(温度为 3)。

在第 7 7 分钟,改变状态为冷却(温度为 3,第 2 2 个顾客满意)。

在第 10 10 分钟,温度将为 0,这将满足最后一个顾客。

在第三个案例中,吉尔东可以在第 0 0 分钟改变状态为加热并保持不变。然后所有的顾客都会满意。注意,第 1 1 个顾客的访问时间等于第 2 2 个顾客的访问时间。

在第二和第四个案例中,吉尔东必须至少让一个顾客不满意。