我们定义“合法括号序列”为满足以下条件之一的字符串:
- 它是空字符串。
- 它是
(、某个合法括号序列 $s$ 和)按此顺序连接而成的字符串。 - 它是两个非空合法括号序列 $s$ 和 $t$ 按此顺序连接而成的字符串。
考虑一个长度为 $N$、由字符 ( 和 ) 组成的字符串 $S$。
问:同时满足以下 $M$ 个条件的最大数量是多少?
- 条件 $i$:$S$ 中从第 $L_i$ 个字符到第 $R_i$ 个字符的连续子串是一个合法括号序列。
输入格式
输入通过标准输入给出,格式如下:
$N$ $M$ $L_1$ $R_1$ $\vdots$ $L_M$ $R_M$
- $2 \le N \le 500$
- $1 \le M \le 500$
- $1 \le L_i < R_i \le N$
- $R_i - L_i + 1$ 为偶数。
- 所有输入值均为整数。
输出格式
在一行中输出答案。
样例
样例 1
5 3 1 2 4 5 2 5
样例 1 输出
2
样例 2
2 4 1 2 1 2 1 2 1 2
样例 2 输出
4
样例 3
32 11 25 32 19 32 11 24 20 31 22 25 21 26 17 22 30 31 23 28 4 15 19 22
样例 3 输出
8
说明
在第一个样例中,对于 $S = (()()$,第一个条件不满足,但第二个和第三个条件满足。无法同时满足所有三个条件,因此答案为 2。