#Z10005. 减二 Ⅱ

减二 Ⅱ

问题描述

给定一个数组 a1,a2,…,ana_1,a_2,\ldots,a_n。你可以进行任意次操作,也可以不进行操作:

每次操作任选一个下标 ii,将 aia_i 修改为:

ai=∣ai−2∣a_i=|a_i-2|

在进行任意次数操作后,请求出数组中某个整数最多可以出现多少次。

∣x∣|x| 为 xx 的绝对值,即如果 xx 小于 00 则 ∣x∣|x| 结果为 −x-x,如果 xx 大于等于 00 则 ∣x∣|x| 结果为 xx。

输入格式

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

对于每个测试用例:

  • 第一行输入一个整数 nn,表示数组长度;
  • 第二行输入 nn 个整数 a1,a2,…,ana_1,a_2,\ldots,a_n,表示数组 aa。

输出格式

对于每个测试用例,输出一行一个整数,表示操作后某个整数的最大可能出现次数。

样例输入 1

5
2
1 3
4
1 1 1 2
3
6 7 8
4
2 2 2 2
5
1 10 100 1000 100000

样例输出 1

2
3
2
4
4

样例解释 1

第一个测试用例中,可以分别对 11 和 33 进行操作后得到 [1,1][1,1],所以答案为 22。

第三个测试用例中,可以把 66 和 88 分别修改为 00,数组变为 [0,7,0][0,7,0],所以答案为 22。

评测数据规模

对于所有数据,保证:

  • 1≤t≤100001\leq t\leq10000;
  • 1≤n≤2×1051\leq n\leq2\times10^5;
  • 1≤ai≤1091\leq a_i\leq10^9;
  • 每个输入文件中所有测试用例的 nn 之和不超过 2×1052\times10^5。