#P1790D. Matryoshkas(※※)

Matryoshkas(※※)

题目描述

玛特廖什卡是一种彩绘娃娃形状的木制玩具,里面可以放一个小号的类似娃娃。

一套嵌套娃娃包含一个或多个嵌套娃娃,它们的大小是连续的正整数。因此,一组嵌套娃娃可以用两个数字来描述:ss --一组中最小的嵌套娃娃的大小;mm --一组中娃娃的数量。换句话说,对于某个整数ssmms,m>0s,m > 0),该集合包含大小为s,s+1,,s+m1s, s + 1, \dots, s + m - 1的娃娃。

你有一套或多套嵌套娃娃。最近,您发现有人将您的所有套娃混在了一起,并记录了一连串的娃娃尺寸--整数 a1,a2,,ana_1, a_2, \dots, a_n

你不记得自己有多少套娃娃了,所以你想知道最初能有的最少套娃的数量。

例如,如果给定的序列是 a=[2,2,3,4,3,1]a=[2, 2, 3, 4, 3, 1]。最初可能有 22 套:

  • 第一组由44个大小为[1,2,3,4][1, 2, 3, 4]的套娃组成;
  • 第二组由22个大小为[2,3][2, 3]的套娃组成。

根据给定的套娃序列 a1,a2,,ana_1, a_2, \dots, a_n,确定能组成这个序列的套娃的最少数量。

每组娃娃都用完了,所以所有的嵌套娃娃都用完了。给定序列中的每个元素必须与某个集合中的一个娃娃完全对应。

输入格式

第一行输入数据包含一个整数 tt (1t1041 \le t \le 10^4) - 测试用例数。

测试用例说明如下。

每个测试用例的第一行包含一个整数 nn (1n21051 \le n \le 2 \cdot 10^5) - 所有集合中的娃娃总数。

每个测试用例的第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \dots, a_n(1ai1091 \le a_i \le 10^9) - 每个娃娃的大小。

保证所有测试用例中 nn 的值之和不超过 21052\cdot10^5

输出格式

为每个测试用例打印一个整数 kk - 最初最少的娃娃数

样例 #1

样例输入 #1

10
6
2 2 3 4 3 1
5
11 8 7 10 9
6
1000000000 1000000000 1000000000 1000000000 1000000000 1000000000
8
1 1 4 4 2 3 2 3
6
1 2 3 2 3 4
7
10 11 11 12 12 13 13
7
8 8 9 9 10 10 11
8
4 14 5 15 6 16 7 17
8
5 15 6 14 8 12 9 11
5
4 2 2 3 4

样例输出 #1

2
1
6
2
2
2
2
2
4
3

提示

第一个测试用例已在问题陈述中说明。

在第二个测试用例中,所有的娃娃都可能是同一个娃娃的一部分,最小大小为 s=7s=7

在第三个测试用例中,每个娃娃代表一个单独的套娃。