#P17085. 游戏

游戏

1010. 游戏

题目描述

Alice 和 Bob 在玩取石子游戏,有 n 堆石子从左到右排成一排,初始时从左到右第 i 堆有 xi 颗石子。

Alice 和 Bob 轮流操作:

  • 轮到 Alice 操作时,Alice 从最左边的堆选至少一个石子,把选中的石子移到第二左的堆。

  • 轮到 Bob 操作时,Bob 从最右边的堆选至少一个石子,把选中的石子移到第二右的堆。

若轮到某人无法操作时,当前操作的人输掉游戏。若 Alice 和 Bob 都使用最优策略,你需要判断 Alice 是否有先手必胜策略。

输入格式

第一行输入一个正整数 T (1 ≤ T ≤ 105 ),表示数据组数。接下来按如下格式输入 T 组数据:每组第一行输入一个整数 n (1 ≤ n ≤ 106 )。第二行输入 n 个正整数表示每堆石子数 x1, x2, …, xn (1 ≤ xi ≤ 109 )

。保证输入数据中 ∑ n ≤ 3 × 106。

输出格式

共输出 T 行。

如果 Alice 有先手必胜策略,输出 YES,否则输出 NO。

样例输入

5
5
4 5 4 5 9
3
4 4 1
2
10 9
5
1 2 1 1 2
5
2 1 1 2 1

样例输出

NO
YES
YES
NO
YES

提示

本题输入输出量较大,建议使用较快速的输入输出方式(如关闭流同步的 cin / cout)。

来源:官方题面 PDF(2026"钉耙编程"暑期联赛 第1场)