现在给你tokitsukaze想要建造n个水晶塔的位置,请你安排一个合理的修建顺序,使得tokitsukaze建造完所有水晶塔的总时间最小(完成建造是指所有建造折跃完毕)。
第一行输入一个T(1≤T≤20),表示有T组数据。
对于每组数据,第一行是两个正整数n,k(1≤n≤1000,1≤k≤10^5),表示tokitsukaze想要建造n个水晶塔,并且每个水晶塔的折跃时间为k。
接下来一行n个用空格隔开的正整数pos[i](1≤pos[i]≤10000),表示第i个水晶塔的位置为pos[i]。
对于每组数据,tokitsukaze建造所有建筑最少花费多少时间。
对于第一个样例,tokitsukaze的最优策略为:
1、先将农民部署在1,然后农民直接修建2号水晶塔,然后农民无需等待,直接向右移动一个单位到达2,水晶塔会自行完成后续的折跃工作,此时总用时为1秒,农民的疲劳值为1。
2、农民在2修建1号水晶塔,疲劳值清零,然后再向右移动一个单位到达3,此时总用时为2秒,农民的疲劳值为1。
3、农民从3移动到4,此时总用时为5秒,农民的疲劳值为2。
4、农民从4移动到5,此时总用时为10秒,农民的疲劳值为3。
5、农民从5移动到6,此时总用时为17秒,农民的疲劳值为4。
6、农民在6修建3号水晶塔,疲劳值清零,然后等待3号水晶塔折跃完成。
7、由于3号水晶塔是最后进行折跃的水晶塔,所以当3号水晶塔进行完折跃后结束任务,3号水晶塔折跃完成时总用时为20秒。
对于第二个样例,tokitsukaze的最优策略为:
先将农民部署在15,然后直接修建水晶塔,然后等待水晶塔折跃完毕,总用时20秒。