311058: CF1928B. Equalize

Memory Limit:256 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

B. Equalizetime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard output

Vasya has two hobbies — adding permutations$^{\dagger}$ to arrays and finding the most frequently occurring element. Recently, he found an array $a$ and decided to find out the maximum number of elements equal to the same number in the array $a$ that he can obtain after adding some permutation to the array $a$.

More formally, Vasya must choose exactly one permutation $p_1, p_2, p_3, \ldots, p_n$ of length $n$, and then change the elements of the array $a$ according to the rule $a_i := a_i + p_i$. After that, Vasya counts how many times each number occurs in the array $a$ and takes the maximum of these values. You need to determine the maximum value he can obtain.

$^{\dagger}$A permutation of length $n$ is an array consisting of $n$ distinct integers from $1$ to $n$ in arbitrary order. For example, $[2,3,1,5,4]$ is a permutation, but $[1,2,2]$ is not a permutation ($2$ appears twice in the array), and $[1,3,4]$ is also not a permutation ($n=3$ but there is $4$ in the array).

Input

Each test consists of multiple test cases. The first line contains a single integer $t$ ($1 \leq t \leq 2 \cdot 10^4$) — the number of test cases. Then follows the description of the test cases.

The first line of each test case contains a single integer $n$ ($1 \le n \le 2 \cdot 10^5$) — the length of the array $a$.

The second line of each test case contains $n$ integers $a_1, a_2, \ldots, a_n$ ($1 \le a_i \le 10^9$) — the elements of the array $a$.

It is guaranteed that the sum of $n$ over all test cases does not exceed $2 \cdot 10^5$.

Output

For each test case, output a single number — the maximum number of elements equal to the same number after the operation of adding a permutation.

ExampleInput
7
2
1 2
4
7 1 4 1
3
103 102 104
5
1 101 1 100 1
5
1 10 100 1000 1
2
3 1
3
1000000000 999999997 999999999
Output
2
2
3
2
1
1
2
Note

In the first test case, it is optimal to choose $p = [2, 1]$. Then after applying the operation, the array $a$ will be $[3, 3]$, in which the number $3$ occurs twice, so the answer is $2$.

In the second test case, one of the optimal options is $p = [2, 3, 1, 4]$. After applying the operation, the array $a$ will be $[9, 4, 5, 5]$. Since the number $5$ occurs twice, the answer is $2$.

Output

题目大意:
Vasya有两个爱好——向数组中添加排列和寻找出现次数最多的元素。他最近找到了一个数组a,并决定找出他可以通过向数组a中添加某个排列来得到的最大数量的相等元素。

更正式地说,Vasya必须选择一个确切的长为n的排列p_1, p_2, p_3, …, p_n,然后根据规则a_i := a_i + p_i改变数组a的元素。之后,Vasya计算数组a中每个数字出现的次数,并取这些值中的最大值。你需要确定他可以得到的最大值。

输入数据格式:
每个测试包含多个测试用例。第一行包含一个整数t(1≤t≤2×10^4)——测试用例的数量。然后是测试用例的描述。

每个测试用例的第一行包含一个整数n(1≤n≤2×10^5)——数组a的长度。

每个测试用例的第二行包含n个整数a_1, a_2, …, a_n(1≤a_i≤10^9)——数组a的元素。

保证所有测试用例的n之和不超过2×10^5。

输出数据格式:
对于每个测试用例,输出一个数字——在添加排列操作后等于同一数字的最大元素数量。

例:
输入:
7
2
1 2
4
7 1 4 1
3
103 102 104
5
1 101 1 100 1
5
1 10 100 1000 1
2
3 1
3
1000000000 999999997 999999999

输出:
2
2
3
2
1
1
2

注意:
在第一个测试用例中,选择p=[2,1]是最优的。然后应用操作后,数组a将是[3,3],其中数字3出现两次,所以答案是2。

在第二个测试用例中,最优选择之一是p=[2,3,1,4]。应用操作后,数组a将是[9,4,5,5]。因为数字5出现两次,所以答案是2。题目大意: Vasya有两个爱好——向数组中添加排列和寻找出现次数最多的元素。他最近找到了一个数组a,并决定找出他可以通过向数组a中添加某个排列来得到的最大数量的相等元素。 更正式地说,Vasya必须选择一个确切的长为n的排列p_1, p_2, p_3, …, p_n,然后根据规则a_i := a_i + p_i改变数组a的元素。之后,Vasya计算数组a中每个数字出现的次数,并取这些值中的最大值。你需要确定他可以得到的最大值。 输入数据格式: 每个测试包含多个测试用例。第一行包含一个整数t(1≤t≤2×10^4)——测试用例的数量。然后是测试用例的描述。 每个测试用例的第一行包含一个整数n(1≤n≤2×10^5)——数组a的长度。 每个测试用例的第二行包含n个整数a_1, a_2, …, a_n(1≤a_i≤10^9)——数组a的元素。 保证所有测试用例的n之和不超过2×10^5。 输出数据格式: 对于每个测试用例,输出一个数字——在添加排列操作后等于同一数字的最大元素数量。 例: 输入: 7 2 1 2 4 7 1 4 1 3 103 102 104 5 1 101 1 100 1 5 1 10 100 1000 1 2 3 1 3 1000000000 999999997 999999999 输出: 2 2 3 2 1 1 2 注意: 在第一个测试用例中,选择p=[2,1]是最优的。然后应用操作后,数组a将是[3,3],其中数字3出现两次,所以答案是2。 在第二个测试用例中,最优选择之一是p=[2,3,1,4]。应用操作后,数组a将是[9,4,5,5]。因为数字5出现两次,所以答案是2。

加入题单

上一题 下一题 算法标签: