#1003. 排序问题1
排序问题1
题目描述
给定一个长度为 的数组 以及一个正整数 。
对于数组中的每一个元素 (),你都必须从以下两种操作中选择一种执行:
- 保持 的值不变;
- 将 的值加上 ,即变为 。
请判断,能否通过为每个元素选择合适的操作,使得最终的数组变成一个非降序的序列。
如果一个序列满足对于所有的 ,都有 成立,则称其为非降序序列。
输入格式
第一行包含一个整数 —— 表示测试用例的数量。
对于每个测试用例:
- 第一行包含两个正整数 和 —— 分别表示数组的长度和给定的加数。
- 第二行包含 个正整数 —— 表示数组的初始元素。
输出格式
对于每个测试用例,如果能够使数组变成非降序序列,输出 Yes;否则输出 No。
样例输入 1
4
3 2
1 3 2
3 1
3 1 2
4 5
10 8 6 4
4 10
2 2 2 2
样例输出 1
Yes
No
No
Yes
说明
样例解释
- 在第一个样例中,我们可以对 加上 ,其余元素保持不变。最终序列变为 ,是非降序的,因此输出
Yes。 - 在第二个样例中,。无论如何操作,第一个元素最小为 。为了满足非降序, 至少要大于等于 ,但 即使加上 也只有 ,无法满足要求,因此输出
No。 - 在第三个样例中,可以证明任何操作都无法使原序列变成非降序,所以输出
No。 - 在第四个样例中,原序列已经是非降序的,所有元素都可以选择保持不变(或者全部加上 ),因此输出
Yes。
数据范围
对于所有测试点,保证:
- 。
- 。
- 。
- 。
- 保证同一测试点内所有测试用例的 之和不超过 。
- 保证所有的输入数值均为整数。