炎炎夏日,鹏鹏要进行魔法试炼了。现在这里有n根魔法柱,第i根柱子高度为a[i],如果鹏鹏所在的柱子和下一根柱子的高度差值不超过k则可以继续前行。并且鹏鹏可以对自己所在的柱子做如下两种操作:
1)增加高度x,x不得超过鹏鹏当前所拥有的魔法石块的数量。此时鹏鹏所拥有的魔法石块数量减少x。
2)减少高度x,x不得超过当前柱子的高度,此时鹏鹏所拥有的魔法石块的数量增加x。
假设鹏鹏一开始拥有m块魔法石块,你能判断出鹏鹏能否到达第n根柱子吗。
炎炎夏日,鹏鹏要进行魔法试炼了。现在这里有n根魔法柱,第i根柱子高度为a[i],如果鹏鹏所在的柱子和下一根柱子的高度差值不超过k则可以继续前行。并且鹏鹏可以对自己所在的柱子做如下两种操作:
1)增加高度x,x不得超过鹏鹏当前所拥有的魔法石块的数量。此时鹏鹏所拥有的魔法石块数量减少x。
2)减少高度x,x不得超过当前柱子的高度,此时鹏鹏所拥有的魔法石块的数量增加x。
假设鹏鹏一开始拥有m块魔法石块,你能判断出鹏鹏能否到达第n根柱子吗。
第一行为t,代表有t组数据。其中(1≤t≤1000)
对于每组数据来说,第一行有三个整数n,m,k。其中(1≤n≤100,0≤m,k≤1e6)
第二行为n个整数,第i个数字代表第i根柱子的高度为a[i]。其中(0≤a[i]≤1e6)
t组数据输出t行,每行代表是否能到达第n根柱子。如果能到达输出YES否则输出NO。
5 3 0 1 4 3 5 3 1 2 1 4 7 4 10 0 10 20 10 20 2 5 5 0 11 1 9 9 99
YES NO YES NO YES
1)针对第一组数据,鹏鹏可以从第一根柱子上拿走一块魔法石块,再将第二根柱的魔法石块增加一块,此时就可以到达第三根柱.
2)针对第二组数据,鹏鹏虽然可以把其拥有的一块魔法石块放到第一根柱上,从而能走到第二根柱. 但因为第二根柱和第三根柱的魔法石块相差3块,所以不可能从第二根柱走到第三根柱.
3)针对第五组数据,因为只有一根柱子,所以肯定能赢。