AT_arc185_b [ARC185B] +1 and -1
题目描述
有一个长度为 $N$ 的整数序列 $A = (A_1, A_2, \dots, A_N)$。
你可以进行如下操作任意次(包括 $0$ 次):
- 选择满足 $1 \leq i < j \leq N$ 的整数对 $(i, j)$,将 $A_i$ 替换为 $A_i + 1$,将 $A_j$ 替换为 $A_j - 1$。
请判断是否可以通过若干次操作将 $A$ 变为广义单调递增的序列(即 $A_1 \leq A_2 \leq \dots \leq A_N$)。
给定 $T$ 组测试数据,请分别输出每组的答案。
输入格式
输入按以下格式从标准输入读入。这里 $\mathrm{case}_i$ 表示第 $i$ 个测试用例。
> $T$
> $\mathrm{case}_1$
> $\mathrm{case}_2$
> $\vdots$
> $\mathrm{case}_T$
每个测试用例的格式如下:
> $N$ $A_1$ $A_2$ $\dots$ $A_N$
输出格式
输出 $T$ 行。第 $i$ 行输出第 $i$ 个测试用例的答案。
对于每个测试用例,如果可以通过操作将 $A$ 变为广义单调递增的序列,输出 `Yes`,否则输出 `No`。
说明/提示
### 限制条件
- $1 \leq T \leq 2 \times 10^5$
- $2 \leq N \leq 2 \times 10^5$
- $0 \leq A_i \leq 10^9$
- 所有测试用例中 $N$ 的总和不超过 $2 \times 10^5$
- 输入的所有数均为整数
### 样例说明 1
对于第 $1$ 个测试用例,可以如下操作将 $A$ 变为广义单调递增的序列:
- 选择 $(i, j) = (1, 2)$。操作后 $A$ 变为 $(2, 6, 5)$。
- 再次选择 $(i, j) = (1, 2)$。操作后 $A$ 变为 $(3, 5, 5)$。
对于第 $2$ 个测试用例,无论如何操作,都无法将 $A$ 变为广义单调递增的序列。
由 ChatGPT 4.1 翻译