猫抓老鼠(mice)

题目描述

在一条数轴上,有一只猫、kk 只老鼠和一个洞。

猫一开始在位置 00,洞在位置 nn

所有老鼠都位于猫和洞之间,第 ii 只老鼠的位置为 xix_i,满足:

0<xi<n0 < x_i < n

多只老鼠可以位于同一个位置。

每一秒会发生如下事情:

  1. 你选择一只还没有被吃掉、也还没有进洞的老鼠,让它向右移动 11 个单位;
  2. 如果这只老鼠到达位置 nn,它就进入洞中并成功获救;
  3. 然后猫向右移动 11 个单位;
  4. 如果猫移动后的位置上有老鼠,那么这些老鼠都会被猫吃掉。

当所有老鼠都已经进洞或被猫吃掉时,过程结束。

请你求出最多有多少只老鼠可以成功进入洞中。

输入格式

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

对于每个测试用例:

第一行包含两个整数 n,kn,k,分别表示洞的位置和老鼠数量。

第二行包含 kk 个整数 x1,x2,,xkx_1,x_2,\ldots,x_k,表示每只老鼠的初始位置。

输出格式

对于每个测试用例,输出一行一个整数,表示最多可以成功进入洞中的老鼠数量。

输入输出样例 #1

输入 #1

3
10 6
8 7 5 4 9 4
2 8
1 1 1 1 1 1 1 1
12 11
1 2 3 4 5 6 7 8 9 10 11

输出 #1

3
1
4

样例解释 #1

对于第 11 组测试数据:

洞在位置 1010,只能救位置为 8,7,98,7,9 的老鼠,共救出 33 只,可以证明这是最优解。

对于第 22 组测试数据:

洞在位置 22,所有老鼠都在位置 11

第一秒可以选择一只老鼠向右移动到位置 22,它立即进入洞中。随后猫移动到位置 11,其余老鼠都会被吃掉。

所以最多只能救出 11 只。

输入输出样例 #2

输入 #2

4
5 1
4
6 3
1 2 3
100 5
99 98 97 1 1
10 4
5 5 5 5

输出 #2

1
1
3
1

样例解释 #2

对于第 11 组测试数据,老鼠在位置 44,距离洞只差 11 个单位,可以被救出。

对于第 22 组测试数据,洞在位置 66,老鼠位置为 1,2,31,2,3。最多只能救出位置为 33 的老鼠。

对于第 33 组测试数据,位置为 99,98,9799,98,97 的三只老鼠可以被救出,位置为 11 的老鼠无法被救出。

对于第 44 组测试数据,所有老鼠都在位置 55。第一次救出一只后,猫已经向右移动,剩余老鼠无法全部安全进入洞,最多救出 11 只。

数据范围与约定

对于所有测试数据,保证:

$$1 \le t \le 10^4,\quad 2 \le n \le 10^9,\quad 1 \le k \le 4 \times 10^5 $$1xi<n1 \le x_i < n

保证所有测试用例中 kk 的总和不超过 4×1054 \times 10^5

测试点 分值 tt k\sum k nn 特殊性质
121\sim 2 1010 5\le 5 20\le 20 100\le 100
353\sim 5 1515 100\le 100 1000\le 1000 105\le 10^5 A\text{A}
686\sim 8 B\text{B}
9129\sim 12 2020 1000\le 1000 5×104\le 5 \times 10^4 109\le 10^9
131613\sim 16 5000\le 5000 2×105\le 2 \times 10^5
172017\sim 20 104\le 10^4 4×105\le 4 \times 10^5

特殊性质 A\text{A}:保证同一组测试数据中所有老鼠位置互不相同。

特殊性质 B\text{B}:保证同一组测试数据中所有老鼠位置都相同。