#CF2050B. Transfusion

Transfusion

B. Transfusion

每个测试用例时间限制22每个测试用例内存限制256256 兆字节

给定一个长度为 nn 的数组 aa。在一次操作中,你可以选取一个下标 ii(满足 2in12 \le i \le n-1),并执行以下两种操作之一:

  1. ai1a_{i-1}11,然后将 ai+1a_{i+1}11
  2. ai+1a_{i+1}11,然后将 ai1a_{i-1}11

每次操作结束后,数组中所有元素的值都必须是非负的。 请问:你能否通过任意次操作,让数组中的所有元素变得相等?


输入格式

第一行输入一个整数 tt1t1041 \le t \le 10^4),表示测试用例的数量。

对于每个测试用例:

  • 第一行输入一个整数 nn3n21053 \le n \le 2 \cdot 10^5);
  • 第二行输入 nn 个整数 a1,a2,,ana_1,a_2,\dots,a_n1ai1091 \le a_i \le 10^9)。

保证:所有测试用例的 nn 之和不超过 21052 \cdot 10^5


输出格式

对于每个测试用例:

  • 如果可以让所有元素相等,输出 YES
  • 否则,输出 NO

你可以以任意大小写形式输出答案(例如 yesYeSnO 均视为正确)。


样例输入

8
3
3 2 1
3
1 1 3
4
1 2 5 4
4
1 6 6 1
5
6 2 1 4 2
4
1 4 2 1
5
3 1 2 1 3
3
2 4 2

样例输出

YES
NO
YES
NO
YES
NO
NO
NO