U463312 Programming Games

题目背景

[std](https://www.luogu.com.cn/paste/9a3tuv0e) [sol](https://www.luogu.com.cn/paste/fg81fcii) $Beaver$ 和 $Revaeb$ 之间长达一个世纪的竞争一直持续到今天。这一次,他们决定在双人游戏中挑战对方。 ![](https://espresso.codeforces.com/997e449b82481b1f816be86a4b26f513dfaf4cc2.png)

题目描述

在编程竞赛中,$Beavers$ 解决问题的顺序是从第一个到最后一个。而 $Revaebs$ 是一种特殊的神兽,它们解决问题的顺序是相反的,从最后一个到第一个。 在即将举行的编程竞赛中,$n$ 只 $Beavers$ 和 $n$ 只 $Revaebs$ 将一决高下!比赛由 $n$ 个问题组成,第 $k$ 个问题的整数点值 $p_k$ 介于 $l_k$ 和 $r_k$ 之间(左闭右闭)。参赛者的得分是他们所解决问题的点值之和。 比赛当天,已知第 $i$ 位 $Beavers$ 解决了前 $i$ 个问题,第 $j$ 位 $Revaebs$ 解决了后 $j$ 个问题。此外,唯一得分相同的一对参赛者是解决了所有问题的两个人,即第 $n$ 个 $Beavers$ 和第 $n$ 个 $Revaebs$。根据这些信息,计算比赛中可能分配给问题的分值的数量。由于这个数字可能很大,请输出除以 $10^9+7$ 后的余数。

输入格式

第一行一个正整数:$n$; 后面 $n$ 行,每行 $2$ 个正整数,$l_i,r_i$;

输出格式

一行一个正整数:$ans$,为方案数 除以 $10^9+7$ 后的余数。

说明/提示

**【样例解释】** 对于第 $3$ 组样例:唯一有效的点值序列是 $1,2,2,2$ 和 $2,2,2,1$,因此答案为 $2$。 **【数据范围】** 对于所有测试数据保证:$n \le 100,1\le l_i\le r_i\le 3000$。 | 测试点编号 | $n\leq$ | $r_i\leq$ | 特殊性质或约束 | | :----------: | :----------: | :----------: | :----------: | | $1,2,3,4$ | $8$ | $8$ | \ | | $5,6,7,8,9,10,11$ | $100$ | $3000$ | $l_i=1$ 且所有 $r_i$ 相等 | | $12,13,14,15$ | $20$ | $20$ | \ | | $16,17,18,19,20$ | $50$ | $100$ | \ | | $21,22,23,24,25$ | $100$ | $3000$ | \ |