#agc061c. [agc061_c]First Come First Serve

[agc061_c]First Come First Serve

题目描述

NN 个顾客,分别称为 1,ldots,N1,\\ldots,N,他们来到商店购物。顾客 ii 在时间 AiA_i 到达商店并在时间 BiB_i 离开。队列的顺序是先来先服务first in-first out),所以 AiA_i 是递增的,BiB_i 也是递增的。此外,所有的 AiA_iBiB_i 两两不同。

入口处有一个访客名单供他们签名。每个顾客只会在名单上写下自己的名字一次,要么是到达时,要么是离开时。最后,结束时名单上可能有多少种不同的名字顺序?求模 998,244,353998\\,244\\,353 后的结果。

约束条件

  • 1leqNleq5cdot1051 \\leq N \\leq 5 \\cdot 10^5
  • 1leqAi<Bileq2N1 \\leq A_i < B_i \\leq 2N
  • Ai<Ai+1A_i < A_{i + 1} (1leqileqN11 \\leq i \\leq N - 1)
  • Bi<Bi+1B_i < B_{i + 1} (1leqileqN11 \\leq i \\leq N - 1)
  • AineqBjA_i \\neq B_j (ineqji \\neq j)
  • 输入的所有值都是整数。

输入

从标准输入按以下格式给出输入:

NN A1A_1 B1B_1 vdots\\vdots ANA_N BNB_N

输出

输出答案。


示例输入 1

3
1 3
2 5
4 6

示例输出 1

3

可能的名字顺序有 (1,2,3)(1, 2, 3), (2,1,3)(2, 1, 3), (1,3,2)(1, 3, 2)


示例输入 2

4
1 2
3 4
5 6
7 8

示例输出 2

1

唯一可能的顺序是 (1,2,3,4)(1, 2, 3, 4)