#P1684D. Traps

    ID: 7679 Type: RemoteJudge 1000ms 256MiB Tried: 0 Accepted: 0 Difficulty: (None) Uploaded By: Tags>constructive algorithmsgreedysortings*1700

Traps

No submission language available for this problem.

Description

There are nn traps numbered from 11 to nn. You will go through them one by one in order. The ii-th trap deals aia_i base damage to you.

Instead of going through a trap, you can jump it over. You can jump over no more than kk traps. If you jump over a trap, it does not deal any damage to you. But there is an additional rule: if you jump over a trap, all next traps damages increase by 11 (this is a bonus damage).

Note that if you jump over a trap, you don't get any damage (neither base damage nor bonus damage). Also, the bonus damage stacks so, for example, if you go through a trap ii with base damage aia_i, and you have already jumped over 33 traps, you get (ai+3)(a_i + 3) damage.

You have to find the minimal damage that it is possible to get if you are allowed to jump over no more than kk traps.

The input consists of multiple test cases. The first line contains a single integer tt (1t1001 \le t \le 100) — the number of test cases. Description of the test cases follows.

The first line of each test case contains two integers nn and kk (1n21051 \le n \le 2 \cdot 10^5, 1kn1 \le k \le n) — the number of traps and the number of jump overs that you are allowed to make.

The second line of each test case contains nn integers a1,a2,,ana_1, a_2, \ldots, a_n (1ai1091 \le a_i \le 10^9) — base damage values of all traps.

It is guaranteed that the sum of nn over all test cases does not exceed 21052 \cdot 10^5.

For each test case output a single integer — the minimal total damage that it is possible to get if you are allowed to jump over no more than kk traps.

Input

The input consists of multiple test cases. The first line contains a single integer tt (1t1001 \le t \le 100) — the number of test cases. Description of the test cases follows.

The first line of each test case contains two integers nn and kk (1n21051 \le n \le 2 \cdot 10^5, 1kn1 \le k \le n) — the number of traps and the number of jump overs that you are allowed to make.

The second line of each test case contains nn integers a1,a2,,ana_1, a_2, \ldots, a_n (1ai1091 \le a_i \le 10^9) — base damage values of all traps.

It is guaranteed that the sum of nn over all test cases does not exceed 21052 \cdot 10^5.

Output

For each test case output a single integer — the minimal total damage that it is possible to get if you are allowed to jump over no more than kk traps.

Samples

Sample Input 1

5
4 4
8 7 1 4
4 1
5 10 11 5
7 5
8 2 5 15 11 2 8
6 3
1 2 3 4 5 6
1 1
7

Sample Output 1

0
21
9
6
0

Note

In the first test case it is allowed to jump over all traps and take 00 damage.

In the second test case there are 55 ways to jump over some traps:

  1. Do not jump over any trap.

    Total damage: 5+10+11+5=315 + 10 + 11 + 5 = 31.

  2. Jump over the 11-st trap.

    Total damage: 0+(10+1)+(11+1)+(5+1)=29\underline{0} + (10 + 1) + (11 + 1) + (5 + 1) = 29.

  3. Jump over the 22-nd trap.

    Total damage: 5+0+(11+1)+(5+1)=235 + \underline{0} + (11 + 1) + (5 + 1) = 23.

  4. Jump over the 33-rd trap.

    Total damage: 5+10+0+(5+1)=215 + 10 + \underline{0} + (5 + 1) = 21.

  5. Jump over the 44-th trap.

    Total damage: 5+10+11+0=265 + 10 + 11 + \underline{0} = 26.

To get minimal damage it is needed to jump over the 33-rd trap, so the answer is 2121.

In the third test case it is optimal to jump over the traps 11, 33, 44, 55, 77:

Total damage: 0+(2+1)+0+0+0+(2+4)+0=90 + (2 + 1) + 0 + 0 + 0 + (2 + 4) + 0 = 9.