题号:NC200576
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
工厂接到了n份订单,每份订单的数量为

件产品,工厂每天只能生产m件产品。
如果第i份订单在第d天被完成,那么我们称订单的完成天数为

。
经理想所有订单被完成的天数的总和

越小越好。请你帮他安排一下订单的完成顺序,
并计算一下这个总和。
输入描述:
第一行是一个整数
,表示样例的个数。
每个样例的第一行是两个整数
,表示订单数与工厂每天能生成的产品数。
第二行是n个整数
,表示第i份订单的数量。
输出描述:
依次输出样例的结果,为一个整数。
示例1
说明
第一个样例,可以直接按照原始顺序生产,3个订单分别完成于第1天,第2天,第3天,总和为6。<br/>
第二个样例,顺序没关系,第一天就能全部完成,所以总和为3。