CF2042A.Greedy Monocarp

传统题 时间 2000 ms 内存 256 MiB 3 尝试 1 已通过 1 标签

Greedy Monocarp

题目描述

nn 个宝箱,第 ii 个有 aia_i 枚金币。对于每个宝箱,你可以加入任何非负整数枚金币,最终使得所有宝箱中金币的总数不小于 kk

在你加入金币之后,贪婪的 Monocarp 会来取金币。他会一个一个的取走宝箱,每次取走金币最多的宝箱,直到他取走金币的总数至少为 kk

你想要 Monocarp 取走尽量少的金币,所以你需要给宝箱增加一定的金币,使得 Monocarp 取走恰好 kk 枚金币。算出你最少需要加入多少枚金币。

输入格式

第一行,一个整数 tt (1t10001\le t\le 1000),表示数据组数。

对于每组数据,输入两行:

  • 第一行,两个整数 n,kn,k (1n501\le n\le 501k1071\le k\le 10^7);
  • 第二行,nn 个整数,a1,a2,,ana_1,a_2,\cdots ,a_n(保证 1aik1\le a_i\le k)。

输出格式

对于每组数据,输出一个整数,表示使 Monocarp 拿走恰好 kk 枚金币,至少需要额外加入多少枚金币。可以证明在题目条件下一定有解。

翻译:HYdroKomide

样例

4
5 4
4 1 2 3 2
5 10
4 1 2 3 2
2 10
1 1
3 8
3 3 3
0
1
8
2

在线编程 IDE

建议全屏模式获得最佳体验