#P50521. 「JOISC 2017 Day 1」港口设施

「JOISC 2017 Day 1」港口设施

题目描述

题目译自 JOISC 2017 Day1 T2「港湾設備 / Port Facility

JOI 港口虽然很小,却非常繁忙。
JOI 港口放置集装箱的结构可视为两个本质不同的栈。每天从船上卸下的集装箱会被压入某个栈,而被运出港口的集装箱则从栈顶弹出。
今天 JOI 港口会迎来 NN 个集装箱,它们在今天内会被运出港口。今天出入口有 2N2N 条记录,每条记录都表示一个集装箱到港或离港。
ii 个集装箱 (1iN)(1\le i\le N) 的到港记录为 AiA_i,离港记录为 BiB_i
我们把 NN 个集装箱分别放在哪个栈称为一个方案。求放置集装箱的方案数 mod(109+7)\bmod (10^9+7)

输入格式

第一行有一个整数 NN。 在接下来的 NN 行中,第 ii(1iN)(1\le i\le N) 有两个整数 Ai,BiA_i, B_i,用空格分隔。

输出格式

一个整数,表示放置集装箱的方案数 mod(109+7)\bmod (10^9+7)

样例 1

4
1 3
2 5
4 8
6 7
4

为了方便叙述,将这两个栈分别称为 A 和 B 。 四种方案分别为:ABAA(第 11 个集装箱放在 A,第 22 个集装箱放在 B,以此类推),ABAB,BABA,BABB。

3
1 4
2 5
3 6
0
5
1 4
2 10
6 9
7 8
3 5
8
8
1 15
2 5
3 8
4 6
14 16
7 9
10 13
11 12
16

数据范围与提示

对于所有数据,1N106,1Ai<Bi2N(1iN),A1AN1\le N\le 10^6, 1\le A_i< B_i\le 2N(1\le i\le N), A_1\ldots A_NB1BNB_1\ldots B_N2N2N 个整数互不相同。

子任务 # 1 2 3 4
NN\le 2020 20002000 10510^5 10610^6
分值 10 12 56 22