Input Format


N K
a_1 a_2 a_3 ... a_N


Output Format

Print the minimum cost in one line. In the end put a line break.


Constraints

* 1 ≤ K ≤ N ≤ 15
* 1 ≤ a_i ≤ 10^9



Scoring

Subtask 1 [120 points]


* N = K

Subtask 2 [90 points]


* N ≤ 5
* a_i ≤ 7

Subtask 3 [140 points]


* There are no additional constraints.

Output Format

Print the minimum cost in one line. In the end put a line break.


Constraints

* 1 ≤ K ≤ N ≤ 15
* 1 ≤ a_i ≤ 10^9



Scoring

Subtask 1 [120 points]


* N = K

Subtask 2 [90 points]


* N ≤ 5
* a_i ≤ 7

Subtask 3 [140 points]


* There are no additional constraints.

Input Format


N K
a_1 a_2 a_3 ... a_N

Example

Input

5 5
3949 3774 3598 3469 3424


Output

1541
N, K = map(int, input().split())
A = list(map(int, input().split()))
money = float('inf')
for bit in range(1 << N):
    S = [0]*N
    for i in range(N):
        if bit & (1 << i):
            S[i] = 1
    if S.count(1) >= K:
        sumnum = 0
        maxh = A[0]
        for i in range(1, N):
            if S[i] == 1:
                if A[i] > maxh:
                    maxh = A[i]
                else:
                    maxh += 1
                    sumnum += (maxh - A[i])
            else:
                maxh = max(maxh, A[i])

        money = min(money, sumnum)
print(money)