AT_abc453_e [ABC453E] Team Division
Description
選手 $ 1 $ 、選手 $ 2 $ 、 $ \ldots $ 、選手 $ N $ の $ N $ 人を、次の条件をすべてみたすように $ 2 $ つの(区別できる)チーム $ A,B $ に分けます。
- それぞれのチームは $ 1 $ 人以上の選手からなる。
- それぞれの選手はチーム $ A,B $ のちょうど一方に属する。
- 選手 $ i $ が所属するチームに属する人数は $ L_i $ 人以上 $ R_i $ 人以下である。
条件をみたすような分け方は何通りあるか求め、その値を $ 998244353 $ で割ったあまりを出力してください。
ただし、 $ 2 $ つの分け方が異なるとは、ある選手が存在してその選手の属するチームが異なることをさします。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ \
> $ L_1 $ $ R_1 $\
> $ L_2 $ $ R_2 $\
> $ \vdots $\
> $ L_N $ $ R_N $
Output Format
条件をみたす分け方の個数を $ 998244353 $ で割ったあまりを出力せよ。
Explanation/Hint
### Sample Explanation 1
次の $ 2 $ 通りの分け方が条件をみたします。
- 選手 $ 1 $ : チーム $ A $ , 選手 $ 2 $ : チーム $ B $ , 選手 $ 3 $ : チーム $ B $
- 選手 $ 1 $ : チーム $ B $ , 選手 $ 2 $ : チーム $ A $ , 選手 $ 3 $ : チーム $ A $
$ 2 $ を $ 998244353 $ で割ったあまりは $ 2 $ であるため、 $ 2 $ を出力します。
### Sample Explanation 2
条件をみたす分け方は $ 30 $ 通りあります。
### Constraints
- $ 2\leq N\leq 2\times 10^5 $
- $ 1\leq L_i\leq R_i\leq N-1 $
- 入力はすべて整数