#CF2109A. 是时候决斗了

是时候决斗了

题目描述

你可能不知道,Mouf 是《游戏王》卡牌游戏的忠实粉丝。他喜欢与遇到的任何人决斗。为了召集所有喜欢玩这款游戏的粉丝,他决定组织一场大型《游戏王》锦标赛,并邀请了 nn 名选手。

Mouf 将 nn 名选手排成一排,编号为 11nn。然后他们进行了 n1n-1 场连续的决斗:对于每个 ii11n1n-1,选手 ii 与选手 i+1i+1 对战,每场比赛产生一个胜者和一个败者。之后,每位选手报告一个值 aia_i0ai10 \le a_i \le 1):

  • 00 表示他们没有赢过任何比赛;
  • 11 表示他们至少赢了一场比赛。

由于有些人可能会为了影响奖金结果而谎报自己的结果(例如,将 00 报成 11,或者相反),Mouf 如果可以证明任何报告是假的,就会取消锦标赛。

给定数组 aa,判断是否至少有一名选手一定在撒谎。

输入格式

每个测试包含多个测试用例。
第一行包含一个整数 tt1t1001 \le t \le 100)——测试用例的数量。
接下来是每个测试用例的描述:

  • 第一行包含一个整数 nn2n1002 \le n \le 100)——锦标赛的选手人数。
  • 第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \dots, a_n0ai10 \le a_i \le 1)——第 ii 位选手的报告。

输出格式

对于每个测试用例,如果至少有一名选手在撒谎,则输出 "YES",否则输出 "NO"

你可以以任何大小写输出答案。例如,"yEs""yes""Yes""YES" 都会被识别为肯定回答。

输入输出样例

输入:

6
3
0 1 0
2
0 0
2
1 1
4
0 1 1 1
4
1 0 0 1
7
0 1 0 1 0 1 0

输出:

NO
YES
YES
NO
YES
NO

样例解释

  • 第一个测试用例[0,1,0][0, 1, 0]
    如果选手 22 同时击败了选手 11 和选手 33,则所有报告一致,因此没有人一定在撒谎。输出 NO

  • 第二个测试用例[0,0][0, 0]
    在选手 1122 的唯一一场比赛中,必然有一人获胜——但两人都声称自己赢了 00 场,因此至少有一人在撒谎。输出 YES

  • 第三个测试用例[1,1][1, 1]
    锦标赛只有选手 1122 之间的一场比赛——但两人不可能都获胜,因此至少有一人的报告是假的。输出 YES

  • 第四个测试用例[0,1,1,1][0, 1, 1, 1]
    可能的情况是:选手 22 击败选手 11,然后选手 33 击败选手 22,然后选手 44 击败选手 33。所有报告一致,因此没有证据表明有人撒谎。输出 NO

  • 第五个测试用例[1,0,0,1][1, 0, 0, 1]
    输出 YES

  • 第六个测试用例[0,1,0,1,0,1,0][0, 1, 0, 1, 0, 1, 0]
    输出 NO