#ZF1176. just swap

just swap

Description

给出互不相等的 nn 个数。你可以进行任意次以下操作

1 选择 i,j  (1≤i,j≤n)i,j\ \ (1 \leq i,j \leq n) 交换 ai,aja_i,a_j。

2 将 aia_i 变为 ai+1a_i+1。

3 将 aia_i 变为 ai−1a_i-1。

请输出将这个数组变得升序所需要的最少操作次数。

Format

Input

第一行包含一个整数 nn,其中 1≤n≤2×1051 \leq n \leq 2\times 10^5,代表数组的长度。

第二行包括 nn 个互不相同的整数,其中第 ii 个aia_i 表示数组中第 ii 个元素的大小,其中 1≤ai≤1061\leq a_i \leq 10^6。

Output

输出一个整数,表示最少操作次数。

Samples

4
4 3 2 1
2

Limitation

1s, 256KiB for each test case.