#P1601C. Optimal Insertion

    ID: 6153 Type: RemoteJudge 3000ms 512MiB Tried: 0 Accepted: 0 Difficulty: (None) Uploaded By: Tags>data structuresdivide and conquerdpgreedysortings*2300

Optimal Insertion

No submission language available for this problem.

Description

You are given two arrays of integers a1,a2,,ana_1, a_2, \ldots, a_n and b1,b2,,bmb_1, b_2, \ldots, b_m.

You need to insert all elements of bb into aa in an arbitrary way. As a result you will get an array c1,c2,,cn+mc_1, c_2, \ldots, c_{n+m} of size n+mn + m.

Note that you are not allowed to change the order of elements in aa, while you can insert elements of bb at arbitrary positions. They can be inserted at the beginning, between any elements of aa, or at the end. Moreover, elements of bb can appear in the resulting array in any order.

What is the minimum possible number of inversions in the resulting array cc? Recall that an inversion is a pair of indices (i,j)(i, j) such that i<ji < j and ci>cjc_i > c_j.

Each test contains multiple test cases. The first line contains the number of test cases tt (1t1041 \leq t \leq 10^4). Description of the test cases follows.

The first line of each test case contains two integers nn and mm (1n,m1061 \leq n, m \leq 10^6).

The second line of each test case contains nn integers a1,a2,,ana_1, a_2, \ldots, a_n (1ai1091 \leq a_i \leq 10^9).

The third line of each test case contains mm integers b1,b2,,bmb_1, b_2, \ldots, b_m (1bi1091 \leq b_i \leq 10^9).

It is guaranteed that the sum of nn for all tests cases in one input doesn't exceed 10610^6. The sum of mm for all tests cases doesn't exceed 10610^6 as well.

For each test case, print one integer — the minimum possible number of inversions in the resulting array cc.

Input

Each test contains multiple test cases. The first line contains the number of test cases tt (1t1041 \leq t \leq 10^4). Description of the test cases follows.

The first line of each test case contains two integers nn and mm (1n,m1061 \leq n, m \leq 10^6).

The second line of each test case contains nn integers a1,a2,,ana_1, a_2, \ldots, a_n (1ai1091 \leq a_i \leq 10^9).

The third line of each test case contains mm integers b1,b2,,bmb_1, b_2, \ldots, b_m (1bi1091 \leq b_i \leq 10^9).

It is guaranteed that the sum of nn for all tests cases in one input doesn't exceed 10610^6. The sum of mm for all tests cases doesn't exceed 10610^6 as well.

Output

For each test case, print one integer — the minimum possible number of inversions in the resulting array cc.

Samples

Sample Input 1

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

Sample Output 1

0
4
6

Note

Below is given the solution to get the optimal answer for each of the example test cases (elements of aa are underscored).

  • In the first test case, c=[1,1,2,2,3,3,4]c = [\underline{1}, 1, \underline{2}, 2, \underline{3}, 3, 4].
  • In the second test case, c=[1,2,3,2,1,3]c = [1, 2, \underline{3}, \underline{2}, \underline{1}, 3].
  • In the third test case, c=[1,1,3,3,5,3,1,4,6]c = [\underline{1}, 1, 3, \underline{3}, \underline{5}, \underline{3}, \underline{1}, 4, 6].