Bessie 在一维数轴上得到了 $N$ ($1\le N\le 10^5$) 个线段。第 $i$ 个线段包含所有满足 $l_i\le x\le r_i$ 的实数 $x$。
定义一组线段的并集为所有至少被一个线段包含的 $x$ 的集合。定义一组线段的复杂度为该并集中连通区域的数量的 $K$ 次方 ($2\le K\le 10$)。
Bessie 想要计算给定 $N$ 个线段的所有 $2^N$ 个子集的复杂度之和,结果对 $10^9+7$ 取模。
通常,你的工作是帮助 Bessie。但这一次,你就是 Bessie,没有人能帮你。帮帮你自己吧!
子任务
- 测试点 2 满足 $N\le 16$。
- 测试点 3-5 满足 $N\le 1000$,$K=2$。
- 测试点 6-8 满足 $N\le 1000$。
- 对于每个 $T\in [9,16]$,测试点 $T$ 满足 $K=3+(T-9)$。
输入格式
第一行包含 $N$ 和 $K$。
接下来的 $N$ 行,每行包含两个整数 $l_i$ 和 $r_i$。保证 $l_i < r_i$,且所有 $l_i, r_i$ 均为 $1 \ldots 2N$ 范围内的不同整数。
输出格式
输出答案,对 $10^9+7$ 取模。
样例
输入 1
3 2 1 6 2 3 4 5
输出 1
10
说明
每个非空子集的复杂度如下:
$$\{[1,6]\} \implies 1, \{[2,3]\} \implies 1, \{[4,5]\} \implies 1$$
$$\{[1,6],[2,3]\} \implies 1, \{[1,6],[4,5]\} \implies 1, \{[2,3],[4,5]\} \implies 4$$
$$\{[1,6],[2,3],[4,5]\} \implies 1$$
答案为 $1+1+1+1+1+4+1=10$。
题目来源:Benjamin Qi