CF1295F Good Contest

题目描述

ForceCoders 是一个大型的竞赛编程平台,即将举办一场在线竞赛。出题人准备了 $n$ 道题目;由于该平台非常受欢迎,来自世界各地共有 $998244351$ 名选手将参与解题。 对于每道题目,出题人预估了会有多少人解出:对于第 $i$ 道题,解出人数将在 $l_i$ 到 $r_i$ 之间(包含两端)。 ForceCoders 的创建者使用不同的标准来判断一场比赛是好还是坏。其中一个标准是题目顺序中的逆序对数量。逆序对指的是一对题目 $(x, y)$,满足 $x$ 在比赛中排在 $y$ 之前(即 $x < y$),但 $y$ 的解出人数严格大于 $x$。 显然,ForceCoders 的创建者和出题人都希望比赛是好的。现在他们想要计算,在假设每道题 $i$ 的解出人数在 $l_i$ 到 $r_i$ 之间的每一个整数都是等概率且彼此独立的情况下,题目顺序中没有逆序对的概率。

输入格式

第一行包含一个整数 $n$($2 \le n \le 50$),表示比赛的题目数量。 接下来 $n$ 行,每行包含两个整数 $l_i$ 和 $r_i$($0 \le l_i \le r_i \le 998244351$),分别表示第 $i$ 道题目的最小和最大解出人数。

输出格式

没有逆序对的概率可以表示为最简分数 $\frac{x}{y}$,其中 $y$ 与 $998244353$ 互质。请输出一个整数,表示 $x y^{-1}$ 模 $998244353$ 的值,其中 $y^{-1}$ 是满足 $y y^{-1} \equiv 1 \pmod{998244353}$ 的整数。

说明/提示

第一个测试点的实际答案是 $\frac{1}{2}$。 由 ChatGPT 4.1 翻译