Helianthuswolf Co., Ltd. 是一家跨国“Intestnet”公司。其全球市场收入逐年增长。Helianthuswolf 的企业文化是其成功的关键。
什么是 Helianthuswolf 的文化?Helianthuswolf 重视创新、激情、质量、协作和多样性。随着 Helianthuswolf 发展成为一家成功的跨国巨头,并拥有日益庞大的全球办事处网络,它现在最看重多样性。
然而,这艘巨轮并非总是一帆风顺。Helianthuswolf 最近遭遇了金融危机。为了在危机中生存,公司决定进行裁员。每个部门都必须裁掉一定数量的程序员。为了反对年龄歧视并尊重多样性文化,Helianthuswolf 决定在裁员后保持年龄的多样性。
但 Helianthuswolf 的招聘人员有些夸大其词且刻板印象严重。他们需要一个可量化的公式来衡量多样性。在阅读了数学书后,他们认为方差是衡量多样性的最佳指标。因此,他们希望在裁员后最大化剩余程序员年龄的方差。
在概率论和统计学中,方差是随机变量与其平均值之差的平方的期望值。集合 $\{x_1, x_2, \dots, x_k\}$ 的方差为 $\frac{1}{k} \sum_{i=1}^{k} (x_i - \frac{1}{k} \sum_{j=1}^{k} x_j)^2$。
请帮助招聘人员编写一个程序,以决定哪些程序员将被裁掉。
输入格式
输入包含多组测试数据。第一行包含一个整数 $T$,表示测试数据的组数。对于每组测试数据:
第一行包含两个整数 $n$ 和 $m$ ($1 \le n \le 10^5$, $0 \le m < n$),分别表示团队中程序员的人数和公司将要裁掉的程序员人数。
第二行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$ ($0 \le a_i \le 10^4$),表示每位程序员的年龄。
保证所有测试数据的 $n$ 之和小于 $2 \times 10^6$。
输出格式
对于每组测试数据,在一行中按递增顺序输出 $n - m$ 个整数。这 $n - m$ 个整数是剩余程序员的索引。如果有多种方案能使方差最大化,请选择字典序最小的一种。每行末尾不要输出多余的空格。
如果序列 $\{x_1, x_2, \dots, x_p\}$ 满足以下条件之一,则称其字典序小于序列 $\{y_1, y_2, \dots, y_q\}$:$p < q$ 且对于所有 $1 \le i \le p$ 都有 $x_i = y_i$,或者存在一个整数 $r$ ($r < p, r < q$) 使得对于所有 $1 \le i \le r$ 都有 $x_i = y_i$ 且 $x_{r+1} < y_{r+1}$。
样例
输入 1
9 3 2 34 35 36 4 2 20 35 41 74 5 2 40 30 50 20 10 5 2 50 40 30 20 10 5 2 10 20 30 40 50 5 3 30 40 20 10 50 5 4 10 20 30 40 50 5 1 30 50 40 20 10 5 0 30 50 40 20 10
输出 1
1 1 4 1 3 5 1 2 5 1 2 5 4 5 1 2 3 4 5 1 2 3 4 5
说明
在第一种情况下,裁掉任意两名程序员都不会改变方差,因此我们有三个候选答案“1”、“2”和“3”。在这三个答案中,“1”的字典序最小。因此我们输出“1”(不含引号)。
在第二种情况下,裁掉一名 35 岁(第 2 个)和一名 41 岁(第 3 个)的程序员可以使方差最大化。由于“1 4”的字典序小于“4 1”,我们输出“1 4”(不含引号)。
在第三种情况下,我们有 12 个候选答案“1 3 5”、“1 5 3”、“3 1 5”、“3 5 1”、“5 1 3”、“5 3 1”、“3 4 5”、“3 5 4”、“4 3 5”、“4 5 3”、“5 3 4”和“5 4 3”。由于“1 3 5”是字典序最小的,我们输出“1 3 5”(不含引号)。