#P10921. 数列变换

数列变换

题目描述

你有 (n) 个数,第 (i) 个数是 (h_i)。你可以做任意多次操作:每次选择一个位置 (j),将 (h_j) 减 1,同时将 (h_{j+1}) 加 1(即把 1 单位从位置 (j) 移到位置 (j+1))。要求最终序列变为严格递增(即 (h_1 < h_2 < \dots < h_n)),且所有元素在变化后都满足非负((\ge 0))。问对于每组测试数据是否可以通过若干次上述操作实现目标序列。


输入格式

  • 第一行一个整数 (t)((1 \le t \le 10^4)),表示测试数据组数。
  • 每组数据:
    • 第一行一个整数 (n)((1 \le n \le 100))。
    • 第二行 (n) 个整数 (h_i)((0 \le h_i \le 10^9)),表示初始序列。所有组中 (n) 的和不超过 (10^4)。

输出格式

对于每组数据输出一行,能则输出 YES,不能则输出 NO


输入样例 #1


2
1 2
2
1 0
3
4 4 4
2
0 0
3
0 1 0
4
1000000000 1000000000 1000000000 1000000000

输出样例 #1

YES
YES
YES
NO
NO
YES

题目说明 / 备注

  • 例如:
    • 第 1 组:已经严格递增,直接 YES
    • 第 2 组:可以变为 0 1,所以 YES
    • 第 3 组:可以通过操作变为 3 4 5,所以 YES