CF2211G Rational Bubble Sort

题目描述

给定一个由有理数构成的序列 $a_1,a_2,\ldots,a_n$,最初每个 $a_i$ 都是 $0$ 到 $10^6$(包含)之间的整数。 你可以执行如下操作任意多次(可以为零次): - 选择一个下标 $i$,使得 $1 \le i < n$,令 $z = \frac{1}{2}(a_{i} + a_{i+1})$。 - 然后,将 $a_i$ 和 $a_{i+1}$ 都赋值为 $z$。 例如,设 $a = [0,15,0]$。如果你对 $i=2$ 执行一次操作,那么 $a$ 变为 $[0,\color{red}{7.5},\color{red}{7.5}]$。 请判断是否有可能使 $a$ 变为非递减排序的序列。

输入格式

每组测试数据包含多个测试用例。第一行为测试用例数量 $t$($1 \le t \le 10^5$)。每个测试用例的描述如下: 第一行为整数 $n$($1 \le n \le 10^6$)。 第二行为 $a_1,a_2,\ldots,a_n$($0 \le a_i \le 10^6$)。 保证所有测试用例中 $n$ 的总和不超过 $10^6$。

输出格式

对于每个测试用例,如果可以使 $a$ 变为非递减序列,输出 “Yes”,否则输出 “No”。 大小写不敏感,例如 “yEs”、"yes"、"YES" 都视为肯定回答。

说明/提示

对于第一个测试用例,不可能使 $a$ 变为非递减序列。 第二个测试用例的解释见题面。 对于第四个测试用例,$a$ 可以被操作为非递减顺序,如 $[0,1,0,0] \to [0,\color{red}{\frac{1}{2}},\color{red}{\frac{1}{2}},0] \to [\color{red}{\frac{1}{4}},\color{red}{\frac{1}{4}},\frac{1}{2},0] \to [\frac{1}{4},\frac{1}{4},\color{red}{\frac{1}{4}},\color{red}{\frac{1}{4}}]$。 由 ChatGPT 5 翻译