分组上课

题目背景

森林编程学院开设了“算法入门课”,共有 nn 只动物报名参加(nn 为偶数)。

为了方便管理,教务主任乐柠兔决定将它们分成两组,每组在不同的工作日上课。

具体要求如下:

  • 一周共有 5 天(编号为 1~5,分别对应周一至周五);
  • 两组上课不能在同一天,但是同一组的同学上课必须在同一天;
  • 每组人数必须相等
  • 每只动物只能被分配到它“有空”的那一天上课。

每只动物都提交了一份调查表,表明它在每个工作日是否方便上课。

现在,乐柠兔想知道:是否存在一种安排方式,能够满足所有条件?


输入格式

第一行包含一个整数 tt,表示测试用例数量。

接下来是 tt 组测试数据,每组数据格式如下:

  • 第一行包含一个整数 nn,表示动物的数量;
  • 接下来 nn 行,每行包含 5 个整数(0 或 1):
    • jj 个数为 1 表示该动物在第 jj 天有空;
    • jj 个数为 0 表示该动物在第 jj 天没空。

保证每只动物至少在某一天有空。所有测试用例中动物总数不超过 10510^5


输出格式

对于每个测试用例,输出一行答案:

  • 若可以找到符合要求的分组方案,输出 YES
  • 否则输出 NO

输入样例

2
4
1 0 0 1 0
0 1 0 0 1
0 0 0 1 0
0 1 0 1 0
2
0 0 0 1 0
0 0 0 1 0

输出样例

YES
NO

样例说明

  • 样例 1: 可以让第 1、3 号动物在第 4 天上课(第一组),第 2、4 号动物在第 2 天上课(第二组)。每组人数相等,且所有动物都在方便的日子上课。

  • 样例 2:

    两只动物都只能在第 4 天上课,因此无法分成两组。


数据范围

  • 1t1041 \le t \le 10^4
  • 2n10002 \le n \le 1000
  • 每个数为 0011
  • 每只动物至少有一天可上课
  • 所有测试中 n105\sum n \le 10^5

相关

在下列比赛中:

「果壳杯」 ROUND 25 (Div. 4)