#CF2129B. 留下或镜像

留下或镜像

B. 留下或镜像
时间限制:22
内存限制:256256 MB

给你一个长度为 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_iai=2npia_i = 2n - p_i
求数组 a1,a2,,ana_1, a_2, \dots, a_n 的最小可能逆序对数。

长度为 nn 的排列是一个包含 11nnnn 个互不相同的整数的数组。例如,[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 中的逆序对是指满足 1i<jn1 \le i < j \le nai>aja_i > a_j 的一对下标 (i,j)(i, j)

输入
每个测试包含多个测试用例。第一行包含测试用例数 tt (1t1031 \le t \le 10^3)。接下来是各测试用例的描述。
每个测试用例的第一行包含一个整数 nn (2n51032 \le n \le 5 \cdot 10^3)。
第二行包含 nn 个整数 p1,p2,,pnp_1, p_2, \dots, p_n (1pin1 \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]