题目描述
每年夏天小Z都会去田间摘樱桃🍒。
今天在举行采摘挑战赛,樱桃地可以看做长度为 L 的直线。若干颗树苗坐落于位置 ai,每棵树苗都已经结了 1 斤的樱桃。注意可能有很多棵树苗在相同的位置。
挑战规则如下,给定樱桃地上的起点 S 与终点 E,如果小Z能在给定时间 T 以内,从起点出发,将所有的樱桃全部采摘到手,并到达终点,即挑战成功,可以直接全部带走!
小Z 空手情况下每移动一个距离用时 1s,但因为樱桃要注意不能碰撞,采摘之后的移动速度不能太快,所以每获取一斤樱桃之后,移动的速度会慢 1s,即现在手上有 x 斤樱桃的话,单位用时为 x+1。采摘一斤樱桃本身也要花费 1s 的时间。
果园老板有很多种起点终点的方案,小Z要先计算出每种方案挑战成功是否可行。
输入格式
第一行,2 个正整数,n,L,分别表示树苗的数量、果园的总长
第二行,n 个用空格隔开的整数 ai,表示每棵树苗的位置
第三行,1 个正整数 q, 表示数据组数
接下来 q 行,每行 3 个正整数 Si,Ei,Ti,表示第 i 个挑战方案的起点、终点、时限
输出格式
q 行,每行表示第 i 个方案能否挑战成功,可以的话输出 Yes,否则输出 No
输入输出样例
3 100
30 80 30
3
0 100 403
0 100 300
0 100 262
Yes
Yes
No
样例 #1说明
3 组方案中,都是从 0 出发,终点为 100,小Z可以一路向终点前进,移动到位置 30 花费 30s,在此采摘 2 斤樱桃,花费 2s,再移动到位置 80,花费 3×50=150,在此再采摘 1 斤,花费 1s,最后携带 3 斤到达终点,花费 4×20=80s,总花费 30+2+150+1+80=263s
3 100
30 80 30
3
0 0 403
0 0 300
0 0 262
Yes
No
No
6 100
0 50 100 0 50 100
4
20 70 600
70 20 600
10 40 600
40 10 600
No
Yes
No
Yes
数据范围
30%:n≤7,q≤10,Si=Ti=0
50%:n≤100,q≤10
100%:
- 1≤n≤5×105
- 1≤L≤5×105
- 0≤ai≤L (1≤i≤n)
- 1≤q≤5×105
- 0≤Si≤L (1≤i≤q)
- 0≤Ei≤L (1≤i≤q)
- 1≤Ti≤5×105 (1≤i≤q)