#CF2003E1. 乌龟与逆序对

乌龟与逆序对

E1. 乌龟与逆序对(简单版)
每测试点时间限制:2 秒
内存限制:512 兆字节

这是本题的简单版本。两个版本的区别在于对 mm 的约束以及简单版本中对于每个 ii11m1m-1 满足 ri<li+1r_i < l_{i+1}。只有同时解决了两个版本,你才能进行 Hack。

乌龟给了你 mm 个区间 [l1,r1],[l2,r2],,[lm,rm][l_1, r_1], [l_2, r_2], \dots, [l_m, r_m]
他认为一个排列 pp有趣的,当且仅当:
对于每个区间 ii 存在一个整数 kik_i(满足 liki<ril_i \le k_i < r_i),并且令

$$a_i = \max_{j = l_i}^{k_i} p_j, \quad b_i = \min_{j = k_i+1}^{r_i} p_j $$

对于每个 i=1,2,,mi = 1, 2, \dots, m,下面的条件成立:

maxi=1mai  <  mini=1mbi\max_{i=1}^m a_i \;<\; \min_{i=1}^m b_i

乌龟希望你在所有长度为 nn 的有趣排列中,计算逆序对的最大个数,如果不存在有趣的排列,则输出 1-1

逆序对的定义:在排列 pp 中,一对 (i,j)(i, j)1i<jn1 \le i < j \le n)满足 pi>pjp_i > p_j 称为一个逆序对。


输入格式
每个测试点包含多个测试用例。第一行包含整数 tt1t1031 \le t \le 10^3),表示测试用例的数量。
每个测试用例的第一行包含两个整数 n,mn, m2n51032 \le n \le 5 \cdot 10^30mn20 \le m \le n^2),分别表示排列长度和区间个数。
接下来 mm 行,第 ii 行包含两个整数 li,ril_i, r_i1li<rin1 \le l_i < r_i \le n),表示第 ii 个区间。

简单版中的额外限制:对于每个 ii11m1m-1,满足 ri<li+1r_i < l_{i+1}
所有测试用例的 nn 之和不超过 51035 \cdot 10^3


输出格式
对于每个测试用例,如果没有有趣的排列,输出一行一个整数 1-1
否则输出一行一个整数,表示最大的逆序对数。


样例输入

6
2 0
2 1
1 2
5 1
2 4
8 2
1 4
6 8
7 2
1 3
4 7
7 3
1 2
3 4
5 6

样例输出

1
0
8
21
15
15

样例解释
第三个测试用例中,逆序对数最大的有趣排列是 [5,2,4,3,1][5,2,4,3,1]

第四个测试用例中,逆序对数最大的有趣排列是 [4,8,7,6,3,2,1,5][4,8,7,6,3,2,1,5]。此时我们可以取 [k1,k2]=[1,7][k_1, k_2] = [1, 7]

第五个测试用例中,逆序对数最大的有趣排列是 [4,7,6,3,2,1,5][4,7,6,3,2,1,5]

第六个测试用例中,逆序对数最大的有趣排列是 [4,7,3,6,2,5,1][4,7,3,6,2,5,1]