#L4139. 「PA 2024」Kraniki

    ID: 4355 传统题 1500ms 256MiB 尝试: 2 已通过: 1 难度: 10 上传者: 标签>组合数学数据结构树状数组2024PA期望计算扫描线偏序关系

「PA 2024」Kraniki

题目描述

Radek and Friends 公司的负责人 Radek 试图淹没竞争对手 Mati and Company 公司的所有货架。为了进行完美的破坏,他让他的朋友,水管工 Janusz 在每个架子都上安装了小水龙头。

为简单起见,Mati and Company 公司中的货架可以用平面上的线段来表示。每个货架都是一对点 (li,hi)(l_i,h_i)(ri,hi)(r_i,h_i) 之间的线段。水管工安装的水龙头是坐标为 (li+ri2,hi+0.5)(\frac{l_i+r_i}{2}, h_i + 0.5) 的点。这个房间的地面用 OXOX 轴表示。

只要打开第 ii 个货架上方的水龙头,该货架就会被水淹没。之后水会自然开始从货架的两端垂直向下滴落,并有可能淹没更多的货架,或自然滴落到地面上。

在第二组样例中,当打开一个水龙头时,水流的可视化效果

Radek 会按某个确定的顺序看水龙头的情况。当他看到第 ii 个水龙头时,当且仅当第 ii 个货架没被水淹,他才会打开这个水龙头。

Radek 还没确定他看水龙头的顺序。它会从 n!n! 种顺序中均匀随机选择一种。Radek 想知道他平均会打开多少个水龙头。

你的任务是回答 Radek 的问题,给出答案对 109+710^9+7 取模后的值。形式化地,令答案为 pq\frac{p}{q},其中 q0q\neq 0gcd(p,q)=1\gcd(p,q)=1。你需要输出 pq1(mod109+7)p\cdot q^{-1}\pmod{10^9+7},其中 q1q^{-1} 是集合 1,2,,109+61,2,\ldots,10^9+6 中唯一满足 qq11(mod109+7)q\cdot q^{-1}\equiv 1\pmod{10^9+7} 的整数。

可以证明对于所有满足题目条件的数据,结果是可测的,不可约形式的分母不会被 109+710^9+7 整除。

输入格式

第一行一个整数 n (1n500,000)n\ (1\le n\le 500,000),表示 Mati 公司的货架数。

接下来 nn 行,第 ii 行有两个整数 li,ri (1li<ri2n)l_i,r_i\ (1\le l_i<r_i\le 2\cdot n),表示第 ii 个货架。为了简单,我们假设 hi=ih_i=i

你可以假设所有 li,ril_i,r_i 两两不同——整数 li,ril_i,r_i 形成了一个 112n2\cdot n 的排列。

输出格式

输出一行一个整数,表示 Radek 平均需要打开多少水龙头。答案对 109+710^9+7 取模后输出。

样例1:

3
4 6
1 3
2 5
2

让我们考虑在第一个样例中 Radek 看水龙头的所有顺序:

1,2,31,2,3 的顺序,他会打开所有 33 个水龙头。

1,3,21,3,2 的顺序,他会先打开水龙头 1133。当他准备打开水龙头 22 时,水已经淹了第 22 个货架,所以他不需要打开水龙头 22 了。

2,1,32,1,3 的顺序,他会打开所有 33 个水龙头。

2,3,12,3,1 的顺序,他会先打开水龙头 2233。当他准备打开水龙头 11 时,水已经淹了第 11 个货架,所以他不需要打开水龙头 11 了。

3,1,23,1,23,2,13,2,1 的顺序,由于打开水龙头 33 后,所有货架都会被淹,因此就不需要再打开剩下的两个水龙头了。

Radek 平均需要打开 16(3+2+3+2+1+1)=2\frac{1}{6}\cdot(3+2+3+2+1+1)=2 个水龙头。

样例2:

5
2 9
3 4
1 8
6 10
5 7
233333338

第二组样例中 Radek 瓶颈要打开 9130\frac{91}{30} 个水龙头,由于 301233333335(mod109+7)30^{-1}\equiv 233333335\pmod{10^9+7},所以输出 $91\cdot 233333335\equiv 21233333485\equiv 233333338\pmod{10^9+7}$。

数据规模与约定

1n500,0001 \le n \le 500,000

1li<ri2n1 \le l_i < r_i \le 2 \cdot n

所有 li,ril_i, r_i 两两不同,形成 112n2n 的一个排列

答案需要对 109+710^9+7 取模