#CF2130D. 保持或镜像

保持或镜像

D. 停留或镜像
每个测试的时间限制:2 秒
内存限制:256 兆字节

你有一个长度为 nn 的排列 p1,p2,,pnp_1, p_2, \dots, p_n

你需要按以下方式构造一个数组 a1,a2,,ana_1, a_2, \dots, a_n

  • 对于每个 1in1 \le i \le n,要么令 ai=pia_i = p_i,要么令 ai=2npia_i = 2n - p_i

请你找出数组 a1,a2,,ana_1, a_2, \dots, a_n 中可能的最少逆序对数量。


排列 的定义:长度为 nn 的排列是由 nn 个从 11nn 的互不相同的整数构成的数组。例如,[2,3,1,5,4][2,3,1,5,4] 是一个排列,但 [1,2,2][1,2,2] 不是(22 出现了两次),[1,3,4][1,3,4] 也不是(n=3n=3 但数组中有 44)。

逆序对 的定义:在数组 a1,a2,,ana_1, a_2, \dots, a_n 中,逆序对是一对下标 (i,j)(i, j),满足 1i<jn1 \le i < j \le nai>aja_i > a_j


输入格式
每个测试包含多个测试用例。第一行包含测试用例的数量 tt1t1031 \le t \le 10^3)。

每个测试用例的第一行包含一个整数 nn2n51032 \le n \le 5 \cdot 10^3)。

第二行包含 nn 个整数 p1,p2,,pnp_1, p_2, \dots, p_n1pin1 \le p_i \le n)。保证 p1,p2,,pnp_1, p_2, \dots, p_n 是一个排列。

保证所有测试用例的 nn 之和不超过 51035 \cdot 10^3


输出格式
对于每个测试用例,输出一个整数 —— 数组 aa 中可能的最少逆序对数量。


示例输入

5
2
2 1
3
2 1 3
4
4 3 2 1
5
2 3 1 5 4
6
2 3 4 1 5 6

示例输出

0
1
0
2
2

提示

  • 在第一个测试用例中,唯一的最优数组 aa[2,3][2, 3],有 00 个逆序对。
  • 在第二个测试用例中,一个最优数组 aa[2,5,3][2, 5, 3],有 11 个逆序对。另一个可能的最优数组 aa[2,1,3][2, 1, 3]