USACO 2025 JAN Siliver B 中文题面
USACO 2025年1月比赛,银组
问题2:约翰最喜欢的运算
在一个寒冷而无聊的日子里,约翰发明了一个涉及对整数数组进行运算的休闲活动。
约翰有一个长度为 \(N\)(\(1 \leq N \leq 2 \cdot 10^5\))的数组 \(a\),包含非负整数,以及一个整数 \(M\)(\(1 \leq M \leq 10^9\))。然后,约翰会询问贝西一个整数 \(x\)。在一次运算中,约翰可以选择一个索引 \(i\),并对 \(a_i\) 加上或减去 1。约翰的无聊值是他必须执行的最小操作次数,使得对于所有 \(1 \leq i \leq N\),\(a_i-x\) 能被 \(M\) 整除。
在所有可能的 \(x\) 中,输出约翰可能的最小无聊值。
输入格式(输入来自终端/标准输入):
第一行包含一个整数 \(T\)(\(1 \leq T \leq 10\)),表示要解决的独立测试用例的数量。
每个测试用例的第一行包含 \(N\) 和 \(M\)。
每个测试用例的第二行包含 \(a_1, a_2, \ldots, a_N\)(\(0 \leq a_i \leq 10^9\))。
保证所有测试用例的 \(N\) 之和不超过 \(5 \cdot 10^5\)。
输出格式(输出到终端/标准输出):
对于每个测试用例,输出一行,包含约翰可能的最小无聊值。
样例输入:
2
5 9
15 12 18 3 8
3 69
1 988244353 998244853
样例输出:
10
21
在第一个测试用例中,一个最优的 \(x\) 选择是 3。约翰可以执行 10 次操作,使得 \(a = [12, 12, 21, 3, 12]\)。
评分:
- 输入2:\(N \le 1000\) 且 \(M \le 1000\)
- 输入3:\(N\le 1000\)
- 输入4-5:\(M\le 10^5\)
- 输入6-16:没有额外限制

浙公网安备 33010602011771号