CF1844F1 Min Cost Permutation (Easy Version)

题目描述

**本题与难度更高的版本唯一的区别在于 $t$ 和 $n$ 的约束条件。** 给定一个包含 $n$ 个正整数的数组 $a_1,\dots,a_n$,以及一个(可能为负数的)整数 $c$。 在数组 $a_1,\dots,a_n$ 的所有排列 $b_1,\dots,b_n$ 中,考虑下式的最小可能值: $$ \sum_{i=1}^{n-1} |b_{i+1}-b_i-c|。 $$ 请找出能够取得该最小值的字典序最小的排列 $b$。 如果序列 $x$ 和 $y$ 满足以下任一条件,则称 $x$ 的字典序小于 $y$: - $x$ 是 $y$ 的前缀,且 $x \ne y$; - 在第一个不同的位置,$x$ 的元素小于 $y$ 对应位置的元素。

输入格式

每组测试数据包含多个测试用例。第一行包含一个整数 $t$($1 \le t \le 10^3$),表示测试用例的数量。接下来是每个测试用例的描述。 每个测试用例的第一行包含两个整数 $n$ 和 $c$($1 \le n \le 5 \cdot 10^3$,$-10^9 \le c \le 10^9$)。 第二行包含 $n$ 个整数 $a_1,\dots,a_n$($1 \le a_i \le 10^9$)。 保证所有测试用例中 $n$ 的总和不超过 $5 \cdot 10^3$。

输出格式

对于每个测试用例,输出 $n$ 个整数 $b_1,\dots,b_n$,表示能够取得最小值 $\sum\limits_{i=1}^{n-1} |b_{i+1}-b_i-c|$ 的字典序最小的 $a$ 的排列 $b$。

说明/提示

在第一个测试用例中,可以证明 $\sum\limits_{i=1}^{n-1} |b_{i+1}-b_i-c|$ 的最小可能值为 $27$,排列 $b = [9,3,1,4,5,1]$ 是能够取得该最小值的字典序最小的排列:$|3-9-(-7)|+|1-3-(-7)|+|4-1-(-7)|+|5-4-(-7)|+|1-5-(-7)| = 1+5+10+8+3 = 27$。 在第二个测试用例中,$\sum\limits_{i=1}^{n-1} |b_{i+1}-b_i-c|$ 的最小可能值为 $0$,$b = [1,3,5]$ 是能够取得该最小值的字典序最小的排列。 在第三个测试用例中,只有一种排列 $b$。 由 ChatGPT 4.1 翻译