远端评测题 1000ms 256MiB

k的倍数

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

说明

时间限制:1 Sec 内存限制:256 MB 输入文件k.in 输出文件k.out

小明得到一个由 $n$ 个整数组成的数组 $a_1$、$a_2$、……、$a_n$ 和一个整数 $k$。

然后,小明得到一个整数 $x=0$,并开始操作。在每一步操作中,他可以执行以下两种动作之一:

  • 从 $1$ 到 $n$ 中选择一个 $i$,并将 $a_i$ 增加 $x$,然后将 $x$ 增加 $1$;
  • 直接将 $x$ 增加 $1$。

其中,第 $1$ 种操作对从 $1$ 到 $n$ 的每个 $i$ 最多只能用一次。

小明的任务是将数组中的每个数都变成 $k$ 的整数倍,请问他最少要执行多少步操作?

输入格式

第一行为一个整数 $t$,表示有 $t$ 组询问;

接下来为 $t$ 组询问,每组询问由两行组成:

第一行为空格分隔的两个整数 $n$、$k$;

第二行为空格分隔的 $n$ 个整数 $a_1$、$a_2$、……、$a_n$。

输出格式

输出为 $t$ 行,第 $i$ 行为对第 $i$ 组询问的回答,为一个整数,表示第 $i$ 组询问中小明至少要执行多少步操作才能把每个数字都变成 $k$ 的倍数。

样例

样例 1

5
4 3
1 2 1 3
10 6
8 7 1 8 3 7 5 10 8 9
5 10
20 100 50 20 100500
10 25
24 24 24 24 24 24 24 24 24 24
8 8
1 2 3 4 5 6 7 8
6
18
0
227
8

样例说明:

以第 11 询问为例:

步数执行操作数组xx
11xx 增加 11不变00 变为 11
22a2a_2 加上 xxxx 增加 11变为 [1,3,1,3][1,3,1,3]11 变为 22
33a3a_3 加上 xxxx 增加 11变为 [1,3,3,3][1,3,3,3]22 变为 33
44a4a_4 加上 xxxx 增加 11变为 [1,3,3,6][1,3,3,6]33 变为 44
55xx 增加 11不变44 变为 55
66a1a_1 加上 xxxx 增加 11变为 [6,3,3,6][6,3,3,6]55 变为 66

数据范围

$1 \le t \le 10^4$

$1 \le n \le 2 \times 10^5$

$1 \le k \le 10^7$

$1 \le a_i \le 10^9$

题目保证所有询问中的 $n$ 之和不超过 $2 \times 10^5$

2025年11月月赛-Div3

未参加
状态
已结束
规则
OI
题目
6
开始于
2025-11-14 0:00
结束于
2025-11-20 0:00
持续时间
2 小时
主持人
参赛人数
40