#CF2109A. 是时候决斗了
是时候决斗了
题目描述
你可能不知道,Mouf 是《游戏王》卡牌游戏的忠实粉丝。他喜欢与遇到的任何人决斗。为了召集所有喜欢玩这款游戏的粉丝,他决定组织一场大型《游戏王》锦标赛,并邀请了 名选手。
Mouf 将 名选手排成一排,编号为 到 。然后他们进行了 场连续的决斗:对于每个 从 到 ,选手 与选手 对战,每场比赛产生一个胜者和一个败者。之后,每位选手报告一个值 ():
- 表示他们没有赢过任何比赛;
- 表示他们至少赢了一场比赛。
由于有些人可能会为了影响奖金结果而谎报自己的结果(例如,将 报成 ,或者相反),Mouf 如果可以证明任何报告是假的,就会取消锦标赛。
给定数组 ,判断是否至少有一名选手一定在撒谎。
输入格式
每个测试包含多个测试用例。
第一行包含一个整数 ()——测试用例的数量。
接下来是每个测试用例的描述:
- 第一行包含一个整数 ()——锦标赛的选手人数。
- 第二行包含 个整数 ()——第 位选手的报告。
输出格式
对于每个测试用例,如果至少有一名选手在撒谎,则输出 "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
样例解释
-
第一个测试用例:
如果选手 同时击败了选手 和选手 ,则所有报告一致,因此没有人一定在撒谎。输出NO。 -
第二个测试用例:
在选手 和 的唯一一场比赛中,必然有一人获胜——但两人都声称自己赢了 场,因此至少有一人在撒谎。输出YES。 -
第三个测试用例:
锦标赛只有选手 和 之间的一场比赛——但两人不可能都获胜,因此至少有一人的报告是假的。输出YES。 -
第四个测试用例:
可能的情况是:选手 击败选手 ,然后选手 击败选手 ,然后选手 击败选手 。所有报告一致,因此没有证据表明有人撒谎。输出NO。 -
第五个测试用例:
输出YES。 -
第六个测试用例:
输出NO。