CF2120E.Lanes of Cars
提高+/省选-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Harshith 是 TollClub 的主席。他让下属 Aryan 负责一个有 n 个车道的收费站。最初,第 i 个车道上有 ai 辆车在排队。每秒钟,每个车道最前面的 1 辆车通过收费站。
一辆车的愤怒值定义为它在通过收费站前等待的秒数。也就是说,每辆车通过收费站需要 1 秒,第一个通过的车愤怒值为 1,第二辆为 2,以此类推。
为了减少拥堵和司机的烦躁,允许车辆随时切换到其他任意车道的队尾。每次换道会让车辆的愤怒值额外增加 k,因为换道会让司机更加困惑。
Harshith 希望帮助司机,要求 Aryan 通过合理安排车辆换道,使所有车辆的总愤怒值最小。Aryan 可以随时让任意车辆换道(也可以不换),目标是使总愤怒值最小。请你帮 Aryan 计算在最优换道方案下,最小的总愤怒值是多少。
输入格式
每个测试点包含多个测试用例。第一行为测试用例数 t(1≤t≤104)。
每个测试用例的第一行包含两个整数 n 和 k(1≤n≤2⋅105,1≤k≤106),分别表示车道数和每次换道增加的愤怒值。
第二行为 n 个用空格分隔的整数,表示数组 a,其中第 i 个数 ai 表示第 i 个车道初始有多少辆车(1≤ai≤106)。
保证所有测试用例中 n 的总和不超过 2⋅105。
注意,所有测试用例中 maxai 的总和没有上界。
输出格式
对于每个测试用例,输出一行一个整数,表示最小的总愤怒值。
输入输出样例
输入#1
6 3 4 13 7 4 4 9 6 12 14 5 5 3 2 4 13 5 10 1 7 6 13 4 10 26 34 39 9 43 48 41 1 38 13 4 46 16 3 176342 171863 70145 80835 160257 136105 78541 100795 114461 45482 68210 51656 29593 8750 173743 156063
输出#1
123 219 156 21 5315 82302351405
说明/提示
在第一个测试用例中,Aryan 将第 1 车道的两辆车移到第 3 车道后,数组变为 [11,7,6]。总愤怒值为 211⋅12+27⋅8+26⋅7+2⋅4=123。可以证明这是最小的愤怒值。
在第四个测试用例中,只有一个车道,车辆无法换道。总愤怒值为 26⋅7=21。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?